https://bugs.ruby-lang.org/https://bugs.ruby-lang.org/favicon.ico?17113305112017-12-25T11:26:50ZRuby Issue Tracking SystemRuby master - Bug #14231: __uint128_t check in hash.c is broken, use https://bugs.ruby-lang.org/issues/14231?journal_id=686362017-12-25T11:26:50Zbircoph (Andrew Savchenko)
<ul></ul><p>Looks like this version affects all ruby versions, though I tested only on 2.4.2 and trunk.</p> Ruby master - Bug #14231: __uint128_t check in hash.c is broken, use https://bugs.ruby-lang.org/issues/14231?journal_id=686372017-12-25T12:20:48Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul></ul><p>Does this mean something is broken, or just performance improvement?</p> Ruby master - Bug #14231: __uint128_t check in hash.c is broken, use https://bugs.ruby-lang.org/issues/14231?journal_id=686382017-12-25T12:32:13Znobu (Nobuyoshi Nakada)nobu@ruby-lang.org
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Closed</i></li></ul><p>Applied in changeset trunk|r61471.</p>
<hr>
<p>Use UINT128_T support flag from configure</p>
<p>Current check for __uint128_t in hash.c is not valid, since it ignores<br>
compilers other than gcc. We hit this on lcc on e2k platform.</p>
<p>Configure script properly checks from 128-bit data types support and<br>
sets HAVE_UINT128_T accordingly. This approach is already used within<br>
ruby at bignum.c, random.c, etc.</p>
<p>Probably hash.c is an overlooked remnant of old days. This patch fixes<br>
this.</p>
<p><a href="/issues/14231">[ruby-core:84438]</a> [Bug <a class="issue tracker-1 status-5 priority-4 priority-default closed" title="Bug: __uint128_t check in hash.c is broken, use (Closed)" href="https://bugs.ruby-lang.org/issues/14231">#14231</a>] [Fix GH-1781]<br>
From: Andrew Savchenko <a href="mailto:bircoph@altlinux.org" class="email">bircoph@altlinux.org</a></p> Ruby master - Bug #14231: __uint128_t check in hash.c is broken, use https://bugs.ruby-lang.org/issues/14231?journal_id=686412017-12-25T17:51:22Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>Backport</strong> changed from <i>2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN</i> to <i>2.3: REQUIRED, 2.4: REQUIRED, 2.5: REQUIRED</i></li></ul> Ruby master - Bug #14231: __uint128_t check in hash.c is broken, use https://bugs.ruby-lang.org/issues/14231?journal_id=691592018-01-03T18:02:57Znaruse (Yui NARUSE)naruse@airemix.jp
<ul><li><strong>Backport</strong> changed from <i>2.3: REQUIRED, 2.4: REQUIRED, 2.5: REQUIRED</i> to <i>2.3: REQUIRED, 2.4: REQUIRED, 2.5: DONE</i></li></ul><p>ruby_2_5 r61579 merged revision(s) 61471,61472.</p> Ruby master - Bug #14231: __uint128_t check in hash.c is broken, use https://bugs.ruby-lang.org/issues/14231?journal_id=711162018-03-20T13:52:10Znagachika (Tomoyuki Chikanaga)nagachika00@gmail.com
<ul><li><strong>Backport</strong> changed from <i>2.3: REQUIRED, 2.4: REQUIRED, 2.5: DONE</i> to <i>2.3: REQUIRED, 2.4: DONE, 2.5: DONE</i></li></ul><p>ruby_2_4 r62863 merged revision(s) 61471,61472.</p>