ConstantFold: Don't optimize comparisons with weak linkage objects
authorDavid Majnemer <david.majnemer@gmail.com>
Sat, 6 Dec 2014 11:58:33 +0000 (11:58 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Sat, 6 Dec 2014 11:58:33 +0000 (11:58 +0000)
commit64ba326b1e79007c0f06b093e3a643b64674aede
tree541813fbda49c7b65e4e00f09db3c0cf060d751c
parented00cd20ade2931c957ff20fb1072404aec709ed
ConstantFold: Don't optimize comparisons with weak linkage objects

Consider:
void f() {}
void __attribute__((weak)) g() {}
bool b = &f != &g;

It's possble for g to resolve to f if --defsym=g=f is passed on to the
linker.

llvm-svn: 223585
llvm/lib/IR/ConstantFold.cpp
llvm/test/Assembler/ConstantExprNoFold.ll