[llvm-bugs] [Bug 41001] [GlobalISel] [aarch64] i1 boolean is still signed extended to -1
via llvm-bugs
llvm-bugs at lists.llvm.org
Fri Mar 8 11:13:01 PST 2019
https://bugs.llvm.org/show_bug.cgi?id=41001
Amara Emerson <aemerson at apple.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |INVALID
--- Comment #2 from Amara Emerson <aemerson at apple.com> ---
This looks correct, although w8 has a #-1 value, it later gets AND'd with 0x1
to do a zext-in-reg from s1 to s32. This is what I currently get at -O0:
; %bb.0: ; %entry
sub sp, sp, #32 ; =32
stp x29, x30, [sp, #16] ; 16-byte Folded Spill
add x29, sp, #16 ; =16
mov w8, #-1
str x0, [sp, #8]
ldr x0, [sp, #8]
orr w9, wzr, #0x1
and w8, w8, w9. ; #-1 here becomes #1
str x0, [sp] ; 8-byte Folded Spill
mov x0, x8
ldr x10, [sp] ; 8-byte Folded Reload
blr x10
ldp x29, x30, [sp, #16] ; 16-byte Folded Reload
add sp, sp, #32 ; =32
ret
--
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190308/a0a1d0f9/attachment.html>
More information about the llvm-bugs
mailing list