[llvm-bugs] [Bug 27421] Mips64: Missing sign extension when operand for truncate instruction is in another basic block.

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Apr 19 03:29:58 PDT 2016


https://llvm.org/bugs/show_bug.cgi?id=27421

Vasileios Kalintiris <Vasileios.Kalintiris at imgtec.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #1 from Vasileios Kalintiris <Vasileios.Kalintiris at imgtec.com> ---
This was fixed in r266203.

I created this PR in order to provide a public point of reference for this bug.

As I explained in my commit, the culprit behind this was the lack of sign
extension on the truncation of i64 values that have been AssertZext'd from an
i32 VT. This is required by the MIPS architecture because instructions
operating
on 32-bit values should have their inputs sign-extended to GPR-width, otherwise
they produce undefined results. See the aforementioned commit, r266203, for
more information.

-- 
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/20160419/2dbc3b24/attachment.html>


More information about the llvm-bugs mailing list