[llvm-dev] LLVM behavior different depending on function symbol name
Andrew Kelley via llvm-dev
llvm-dev at lists.llvm.org
Mon Jun 19 10:42:21 PDT 2017
On Mon, Jun 19, 2017 at 12:47 PM, James Y Knight <jyknight at google.com>
wrote:
>
>
> On Mon, Jun 19, 2017 at 12:34 PM, Mehdi AMINI via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> using `opt --print-after-all -O3` I see that EarlyCSE is interpreting the
>> call to `ceil` and constant fold:
>>
>> *** IR Dump After Early CSE ***
>> ; Function Attrs: nobuiltin nounwind
>> define i1 @do_test() #2 {
>> Entry:
>> %0 = call fastcc float @ceil(float 0.000000e+00) #6
>> %1 = call fastcc float @ceil32(float 0.000000e+00) #6
>> %2 = fcmp fast oeq float 0.000000e+00, %1
>> ret i1 %2
>> }
>>
>> So just running `opt -early-cse -debug` seems enough:
>>
>> EarlyCSE Simplify: %0 = call fastcc float @ceil(float 0.000000e+00) #6
>> to: float 0.000000e+00
>>
>> I suspect it is not correct from EarlyCSE to do that.
>>
>>
> This was actually _just_ fixed:
> https://reviews.llvm.org/rL305132
>
Excellent. Is the fix included in llvm 4.0.1?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170619/64c8a810/attachment.html>
More information about the llvm-dev
mailing list