Displaying 1 result from an estimated 1 matches for "sext64".
Did you mean:
set64
2017 Jun 14
2
the nsw story, revisited
...==================
------------------------------------------------------------------------
Mon Dec 12 2011 "nsw is still logically inconsistent" (Dan Gohman)
# Dan provides this example
# i32 a,b; i64 c,d,e,f;
#
# if (cond) { // assume cond prevents signed wrap
# c = sext64( a +nsw b ) // upper 33-bits all 1's or all 0's
# d = (c >> 31) + 1 // 0 or 1 result
# e = d <u 2 // 1 result
# f = 1 / e // no possible divide-by-zero
# }
# the problem is when the compiler tries to speculatively hoist everything
# out o...