https://bugs.llvm.org/show_bug.cgi?id=43298
Bug ID: 43298
Summary: Function called at the end of multiple paths results
in different x86_64 assembly than equivalent call
after all paths have completed
Product: new-bugs
Version: trunk
Hardware: PC
OS: Linux
Status: NEW
Severity: enhancement
Priority: P
Component: new bugs
Assignee: unassignedb...@nondot.org
Reporter: jmunx...@yahoo.com
CC: htmldevelo...@gmail.com, llvm-bugs@lists.llvm.org
Created attachment 22490
--> https://bugs.llvm.org/attachment.cgi?id=22490&action=edit
Code that exhibits the issue
https://godbolt.org/z/37Leg_
Clang trunk (371698) is able to reduce "munge" to the same code as "munge2".
(BTW all versions of gcc, icc, and older clang versions could not.)
However, "munge1" and "munge3" get a slightly longer version that loads and
stores to/from a register instead of using immediates. As best I can tell
these are all represent equivalent functions and should have the same ASM
representation for a given optimization level.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs