diff options
author | Pawel Wodnicki <pawel@32bitmicro.com> | 2012-12-04 19:47:56 +0000 |
---|---|---|
committer | Pawel Wodnicki <pawel@32bitmicro.com> | 2012-12-04 19:47:56 +0000 |
commit | bdcb22211f5642528f75c1f2b079922f2cc45ee6 (patch) | |
tree | b90e95518a59034ecf7a3955dcaf11ae6309c2a9 /lib/MC | |
parent | a9020249400f65612fc9f1c0f5cfebe50a58ff85 (diff) | |
download | llvm-bdcb22211f5642528f75c1f2b079922f2cc45ee6.tar.gz llvm-bdcb22211f5642528f75c1f2b079922f2cc45ee6.tar.bz2 llvm-bdcb22211f5642528f75c1f2b079922f2cc45ee6.tar.xz |
Merging MIPS GOT changeset into 3.2 release branch.
Merging r168471:
Mips direct object xgot support
This patch provides support for the MIPS relocations:
*) R_MIPS_GOT_HI16
*) R_MIPS_GOT_LO16
*) R_MIPS_CALL_HI16
*) R_MIPS_CALL_LO16
These are used for large GOT instruction sequences.
Contributer: Jack Carter
Merging r168460:
[mips] Generate big GOT code.
Merging r168458:
[mips] Simplify lowering functions in MipsISelLowering.cpp by using the helper
functions added in r168456.
Merging r168456:
[mips] Add helper functions that create nodes for computing address.
Merging r168455:
[mips] Add command line option "-mxgot".
Merging r168453:
[mips] When a node which loads from a GOT is created, pass a MachinePointerInfo
referring to a GOT entry.
Merging r168450:
[mips] Add target operand flag enums for big GOT relocations.
Merging r168448:
Add relocations used for mips big GOT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/branches/release_32@169294 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/MC')
-rw-r--r-- | lib/MC/MCExpr.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/MC/MCExpr.cpp b/lib/MC/MCExpr.cpp index e0336342d6..de2f375aab 100644 --- a/lib/MC/MCExpr.cpp +++ b/lib/MC/MCExpr.cpp @@ -229,6 +229,10 @@ StringRef MCSymbolRefExpr::getVariantKindName(VariantKind Kind) { case VK_Mips_GOT_OFST: return "GOT_OFST"; case VK_Mips_HIGHER: return "HIGHER"; case VK_Mips_HIGHEST: return "HIGHEST"; + case VK_Mips_GOT_HI16: return "GOT_HI16"; + case VK_Mips_GOT_LO16: return "GOT_LO16"; + case VK_Mips_CALL_HI16: return "CALL_HI16"; + case VK_Mips_CALL_LO16: return "CALL_LO16"; } llvm_unreachable("Invalid variant kind"); } |