[llvm-bugs] [Bug 24500] RA breaks invariance of generated code

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Sep 15 11:23:12 PDT 2015


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

David Kreitzer <david.l.kreitzer at intel.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                URL|                            |http://reviews.llvm.org/rL2
                   |                            |47042
         Resolution|---                         |FIXED

--- Comment #1 from David Kreitzer <david.l.kreitzer at intel.com> ---
The bug was actually in the X86 call frame optimization, which used a
non-deterministic map walk to decide the order in which calls are optimized.
(The map used machine instruction pointers as keys.) The different optimization
order resulted in different orderings in vreg use lists, which ultimately
resulted in register allocation differences.

The fix was to use a vector rather than a map to hold the list of call
optimization candidates.

-- 
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/20150915/181599c9/attachment.html>


More information about the llvm-bugs mailing list