This is an archive of the discontinued LLVM Phabricator instance.

[ARM] select is not lowered in branching
AbandonedPublic

Authored by kamleshbhalui on May 23 2020, 5:56 AM.

Details

Summary

for test case please see at https://godbolt.org/z/XY5iTx

instruction vadd.f64 is executed even when if condition is false.
later we ignore the result but we ended up setting fp exception bit,
which breaks posix conformance.
This behavior is pops up when optimization enabled.

As part of this fix conversion of select to branching instruction is enabled.

Diff Detail

Event Timeline

kamleshbhalui created this revision.May 23 2020, 5:56 AM

fixed failing testcase.

kamleshbhalui abandoned this revision.May 25 2020, 11:18 PM

-ftrapping-math will do the work.
so abandoning it.