[SimplifyLibCalls] Simplify optimizePuts
authorFangrui Song <maskray@google.com>
Tue, 12 Mar 2019 14:20:22 +0000 (14:20 +0000)
committerFangrui Song <maskray@google.com>
Tue, 12 Mar 2019 14:20:22 +0000 (14:20 +0000)
commitb1dfbebe8bfbeffcb389d941a370a89a161eb4da
treed1b4df0d0cbb5debb7a38495046a8d72c2372732
parent06bee01d2bc7d17e3ee378a1791946b81e2a4611
[SimplifyLibCalls] Simplify optimizePuts

The code might intend to replace puts("") with putchar('\n') even if the
return value is used. It failed because use_empty() was used to guard
the whole block. While returning '\n' (putchar('\n')) is technically
correct (puts is only required to return a nonnegative number on
success), doing this looks weird and there is really little benefit to
optimize puts whose return value is used. So don't do that.

llvm-svn: 355921
llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp