diff options
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
| -rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 25 |
1 files changed, 0 insertions, 25 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index d0c77030acd..b293dfa98f8 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -1926,20 +1926,10 @@ unsigned X86TargetLowering::getJumpTableEncoding() const { if (isPositionIndependent() && Subtarget.isPICStyleGOT()) return MachineJumpTableInfo::EK_Custom32; - // On Win64, we want to use both label differences and a separate section. - if (Subtarget.isTargetWin64()) - return MachineJumpTableInfo::EK_LabelDifference32; - // Otherwise, use the normal jump table encoding heuristics. return TargetLowering::getJumpTableEncoding(); } -bool X86TargetLowering::isJumpTableRelative() const { - if (Subtarget.isTargetWin64()) - return true; - return TargetLowering::isJumpTableRelative(); -} - bool X86TargetLowering::useSoftFloat() const { return Subtarget.useSoftFloat(); } @@ -1958,19 +1948,11 @@ X86TargetLowering::LowerCustomJumpTableEntry(const MachineJumpTableInfo *MJTI, /// Returns relocation base for the given PIC jumptable. SDValue X86TargetLowering::getPICJumpTableRelocBase(SDValue Table, SelectionDAG &DAG) const { - // COFF doesn't have relocations to take the difference between two arbitrary - // symbols. The assembler, however, can resolve a fixup between the function - // entry and a basic block label, so use the function entry as the base. - if (Subtarget.isTargetWin64()) - return DAG.getGlobalAddress(DAG.getMachineFunction().getFunction(), SDLoc(), - getPointerTy(DAG.getDataLayout())); - if (!Subtarget.is64Bit()) // This doesn't have SDLoc associated with it, but is not really the // same as a Register. return DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), getPointerTy(DAG.getDataLayout())); - return Table; } @@ -1979,13 +1961,6 @@ SDValue X86TargetLowering::getPICJumpTableRelocBase(SDValue Table, const MCExpr *X86TargetLowering:: getPICJumpTableRelocBaseExpr(const MachineFunction *MF, unsigned JTI, MCContext &Ctx) const { - // COFF doesn't have relocations to take the difference between two arbitrary - // symbols. The assembler, however, can resolve a fixup between the function - // entry and a basic block label, so use the function entry as the base. - if (Subtarget.isTargetWin64()) - return MCSymbolRefExpr::create( - getTargetMachine().getSymbol(MF->getFunction()), Ctx); - // X86-64 uses RIP relative addressing based on the jump table label. if (Subtarget.isPICStyleRIPRel()) return TargetLowering::getPICJumpTableRelocBaseExpr(MF, JTI, Ctx); |

