aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-25 21:10:10 +0000
committerChris Lattner <sabre@nondot.org>2010-01-25 21:10:10 +0000
commit78f485afb723121eedf4b6907ae6eb53da8af03c (patch)
tree33ce4077f681dcb4ec7676ad7ab0c37a667feb13 /lib
parenta86106ed88582b913ac2394a5a4ad1868b299da4 (diff)
rename MAI::PICJumpTableDirective to MAI::GPRel32Directive to
make it clear what it is, instead of how it is used. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94448 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/CodeGen/AsmPrinter/AsmPrinter.cpp16
-rw-r--r--lib/MC/MCAsmInfo.cpp2
-rw-r--r--lib/Target/Alpha/AlphaMCAsmInfo.cpp2
-rw-r--r--lib/Target/Mips/MipsMCAsmInfo.cpp2
4 files changed, 10 insertions, 12 deletions
diff --git a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
index 3077ae371d..7a44a01656 100644
--- a/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ b/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -541,15 +541,14 @@ void AsmPrinter::EmitJumpTableInfo(MachineJumpTableInfo *MJTI,
void AsmPrinter::printPICJumpTableEntry(const MachineJumpTableInfo *MJTI,
const MachineBasicBlock *MBB,
unsigned uid) const {
- // Use JumpTableDirective otherwise honor the entry size from the jump table
- // info.
- const char *JTEntryDirective = MAI->getPICJumpTableDirective();
- bool HadJTEntryDirective = JTEntryDirective != NULL;
- if (!HadJTEntryDirective) {
- JTEntryDirective = MJTI->getEntrySize() == 4 ?
- MAI->getData32bitsDirective() : MAI->getData64bitsDirective();
+ // If the target supports GPRel, use it.
+ if (const char *GPRel32Dir = MAI->getGPRel32Directive()) {
+ O << GPRel32Dir << *GetMBBSymbol(MBB->getNumber()) << '\n';
+ return;
}
+ const char *JTEntryDirective = MJTI->getEntrySize() == 4 ?
+ MAI->getData32bitsDirective() : MAI->getData64bitsDirective();
O << JTEntryDirective << ' ';
// If we have emitted set directives for the jump table entries, print
@@ -564,8 +563,7 @@ void AsmPrinter::printPICJumpTableEntry(const MachineJumpTableInfo *MJTI,
O << *GetMBBSymbol(MBB->getNumber());
// If the arch uses custom Jump Table directives, don't calc relative to
// JT.
- if (!HadJTEntryDirective)
- O << '-' << *GetJTISymbol(uid);
+ O << '-' << *GetJTISymbol(uid);
}
O << '\n';
}
diff --git a/lib/MC/MCAsmInfo.cpp b/lib/MC/MCAsmInfo.cpp
index 0f3c46ba82..796dcc4d33 100644
--- a/lib/MC/MCAsmInfo.cpp
+++ b/lib/MC/MCAsmInfo.cpp
@@ -48,7 +48,7 @@ MCAsmInfo::MCAsmInfo() {
AlignDirective = "\t.align\t";
AlignmentIsInBytes = true;
TextAlignFillValue = 0;
- PICJumpTableDirective = 0;
+ GPRel32Directive = 0;
GlobalDirective = "\t.globl\t";
SetDirective = 0;
HasLCOMMDirective = false;
diff --git a/lib/Target/Alpha/AlphaMCAsmInfo.cpp b/lib/Target/Alpha/AlphaMCAsmInfo.cpp
index b652a5305a..0e63582fac 100644
--- a/lib/Target/Alpha/AlphaMCAsmInfo.cpp
+++ b/lib/Target/Alpha/AlphaMCAsmInfo.cpp
@@ -17,6 +17,6 @@ using namespace llvm;
AlphaMCAsmInfo::AlphaMCAsmInfo(const Target &T, const StringRef &TT) {
AlignmentIsInBytes = false;
PrivateGlobalPrefix = "$";
- PICJumpTableDirective = ".gprel32";
+ GPRel32Directive = ".gprel32";
WeakRefDirective = "\t.weak\t";
}
diff --git a/lib/Target/Mips/MipsMCAsmInfo.cpp b/lib/Target/Mips/MipsMCAsmInfo.cpp
index 2fa276298e..c5356f0e23 100644
--- a/lib/Target/Mips/MipsMCAsmInfo.cpp
+++ b/lib/Target/Mips/MipsMCAsmInfo.cpp
@@ -22,5 +22,5 @@ MipsMCAsmInfo::MipsMCAsmInfo(const Target &T, const StringRef &TT) {
PrivateGlobalPrefix = "$";
CommentString = "#";
ZeroDirective = "\t.space\t";
- PICJumpTableDirective = "\t.gpword\t";
+ GPRel32Directive = "\t.gpword\t";
}