diff options
author | Simon Atanasyan <simon@atanasyan.com> | 2015-12-25 13:02:13 +0000 |
---|---|---|
committer | Simon Atanasyan <simon@atanasyan.com> | 2015-12-25 13:02:13 +0000 |
commit | 57830b60dc9dc3bf8d42d2a21ea501834838edeb (patch) | |
tree | 8bffd7393fc111aea90ab5a0084c0ea7d1c7a774 /clang/test/OpenMP/taskloop_simd_loop_messages.cpp | |
parent | a7afacae7060abfa9a91a7607afab4f5898eee45 (diff) | |
download | bcm5719-llvm-57830b60dc9dc3bf8d42d2a21ea501834838edeb.tar.gz bcm5719-llvm-57830b60dc9dc3bf8d42d2a21ea501834838edeb.zip |
[ELF][MIPS] Implement R_MIPS_GPREL16/R_MIPS_GPREL32 relocations
The R_MIPS_GPREL16 / R_MIPS_GPREL32 relocations use the following
expressions for calculations:
```
local symbol: S + A + GP0 - GP
global symbol: S + A - GP
GP - Represents the final gp value, i.e. _gp symbol
GP0 - Represents the gp value used to create the relocatable object
```
The GP0 value is taken from the .reginfo data section defined by an object
file. To implement that I keep a reference to `MipsReginfoInputSection`
in the `ObjectFile` class. This reference is used by the
`ObjectFile::getMipsGp0` method to return the GP0 value.
Differential Revision: http://reviews.llvm.org/D15760
llvm-svn: 256416
Diffstat (limited to 'clang/test/OpenMP/taskloop_simd_loop_messages.cpp')
0 files changed, 0 insertions, 0 deletions