aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorDaniel Sanders <daniel.sanders@imgtec.com>2016-05-11 15:44:23 +0000
committerDaniel Sanders <daniel.sanders@imgtec.com>2016-05-11 15:44:23 +0000
commit45533b4060c781a7925faec9f9a933e568e0480b (patch)
tree7c4758195af6072ccc9afe485660a0435befb9e2 /clang/lib/Frontend/CompilerInvocation.cpp
parent79acc976ea001ce8138a191c8ab90562c8d9990a (diff)
downloadllvm-45533b4060c781a7925faec9f9a933e568e0480b.zip
llvm-45533b4060c781a7925faec9f9a933e568e0480b.tar.gz
llvm-45533b4060c781a7925faec9f9a933e568e0480b.tar.bz2
[mips][ias] Work around incorrect microMIPS relocation evaluation exposed by r268900
microMIPS has a special case that is not correctly implemented in LLVM. If we have a symbol 'foo' which is equivalent to '.text+0x10'. The value of an R_MICROMIPS_LO16 relocation using 'foo' is 'foo+0x11' and not 'foo+0x10'. The in-place addend should therefore be 0x11. Work around this by partially reverting the effect of r268900 by keeping the symbol when the STO_MIPS_MICROMIPS flag is set. This fixes SingleSource/Regression/C/PR640 for microMIPS. llvm-svn: 269196
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions