summaryrefslogtreecommitdiff
path: root/include/llvm/MC/MCAsmInfo.h
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@mips.com>2012-02-03 04:33:00 +0000
committerAkira Hatanaka <ahatanaka@mips.com>2012-02-03 04:33:00 +0000
commit6c2cf8b1fbcf70fd9db6fe44032c1ceaa2299760 (patch)
treea4ccd8fe12fbd58b2ca6fb64601acc7d41d71f38 /include/llvm/MC/MCAsmInfo.h
parentaab219110994cc4d848fae5f50166a2f70ccc812 (diff)
downloadllvm-6c2cf8b1fbcf70fd9db6fe44032c1ceaa2299760.tar.gz
llvm-6c2cf8b1fbcf70fd9db6fe44032c1ceaa2299760.tar.bz2
llvm-6c2cf8b1fbcf70fd9db6fe44032c1ceaa2299760.tar.xz
Add a new MachineJumpTableInfo entry type, EK_GPRel64BlockAddress, which is
needed to emit a 64-bit gp-relative relocation entry. Make changes necessary for emitting jump tables which have entries with directive .gpdword. This patch does not implement the parts needed for direct object emission or JIT. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149668 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/MC/MCAsmInfo.h')
-rw-r--r--include/llvm/MC/MCAsmInfo.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/llvm/MC/MCAsmInfo.h b/include/llvm/MC/MCAsmInfo.h
index 5accabcd9f..5027a8f424 100644
--- a/include/llvm/MC/MCAsmInfo.h
+++ b/include/llvm/MC/MCAsmInfo.h
@@ -180,6 +180,11 @@ namespace llvm {
const char *JT32Begin; // Defaults to "$a."
bool SupportsDataRegions;
+ /// GPRel64Directive - if non-null, a directive that is used to emit a word
+ /// which should be relocated as a 64-bit GP-relative offset, e.g. .gpdword
+ /// on Mips.
+ const char *GPRel64Directive; // Defaults to NULL.
+
/// GPRel32Directive - if non-null, a directive that is used to emit a word
/// which should be relocated as a 32-bit GP-relative offset, e.g. .gpword
/// on Mips or .gprel32 on Alpha.
@@ -376,6 +381,7 @@ namespace llvm {
const char *getData64bitsDirective(unsigned AS = 0) const {
return AS == 0 ? Data64bitsDirective : getDataASDirective(64, AS);
}
+ const char *getGPRel64Directive() const { return GPRel64Directive; }
const char *getGPRel32Directive() const { return GPRel32Directive; }
/// [Code|Data]Begin label name accessors.