mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-28 19:31:58 +00:00
Reformat this routine slightly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192630 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
e108345b57
commit
739eb9d82d
@ -8210,10 +8210,9 @@ static SDValue LowerToTLSExecModel(GlobalAddressSDNode *GA, SelectionDAG &DAG,
|
||||
Value *Ptr = Constant::getNullValue(Type::getInt8PtrTy(*DAG.getContext(),
|
||||
is64Bit ? 257 : 256));
|
||||
|
||||
SDValue ThreadPointer = DAG.getLoad(PtrVT, dl, DAG.getEntryNode(),
|
||||
DAG.getIntPtrConstant(0),
|
||||
MachinePointerInfo(Ptr),
|
||||
false, false, false, 0);
|
||||
SDValue ThreadPointer =
|
||||
DAG.getLoad(PtrVT, dl, DAG.getEntryNode(), DAG.getIntPtrConstant(0),
|
||||
MachinePointerInfo(Ptr), false, false, false, 0);
|
||||
|
||||
unsigned char OperandFlags = 0;
|
||||
// Most TLS accesses are not RIP relative, even on x86-64. One exception is
|
||||
@ -8235,21 +8234,20 @@ static SDValue LowerToTLSExecModel(GlobalAddressSDNode *GA, SelectionDAG &DAG,
|
||||
// emit "addl x@ntpoff,%eax" (local exec)
|
||||
// or "addl x@indntpoff,%eax" (initial exec)
|
||||
// or "addl x@gotntpoff(%ebx) ,%eax" (initial exec, 32-bit pic)
|
||||
SDValue TGA = DAG.getTargetGlobalAddress(GA->getGlobal(), dl,
|
||||
GA->getValueType(0),
|
||||
GA->getOffset(), OperandFlags);
|
||||
SDValue TGA =
|
||||
DAG.getTargetGlobalAddress(GA->getGlobal(), dl, GA->getValueType(0),
|
||||
GA->getOffset(), OperandFlags);
|
||||
SDValue Offset = DAG.getNode(WrapperKind, dl, PtrVT, TGA);
|
||||
|
||||
if (model == TLSModel::InitialExec) {
|
||||
if (isPIC && !is64Bit) {
|
||||
Offset = DAG.getNode(ISD::ADD, dl, PtrVT,
|
||||
DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT),
|
||||
DAG.getNode(X86ISD::GlobalBaseReg, SDLoc(), PtrVT),
|
||||
Offset);
|
||||
}
|
||||
|
||||
Offset = DAG.getLoad(PtrVT, dl, DAG.getEntryNode(), Offset,
|
||||
MachinePointerInfo::getGOT(), false, false, false,
|
||||
0);
|
||||
MachinePointerInfo::getGOT(), false, false, false, 0);
|
||||
}
|
||||
|
||||
// The address of the thread local variable is the add of the thread
|
||||
|
Loading…
Reference in New Issue
Block a user