@@ -18831,16 +18831,17 @@ X86TargetLowering::LowerGlobalAddress(SDValue Op, SelectionDAG &DAG) const {
18831
18831
return LowerGlobalOrExternal(Op, DAG, /*ForCall=*/false);
18832
18832
}
18833
18833
18834
- static SDValue GetTLSADDR(SelectionDAG &DAG, SDValue Chain ,
18835
- GlobalAddressSDNode *GA, const EVT PtrVT,
18836
- unsigned ReturnReg, unsigned char OperandFlags,
18834
+ static SDValue GetTLSADDR(SelectionDAG &DAG, GlobalAddressSDNode *GA ,
18835
+ const EVT PtrVT, unsigned ReturnReg ,
18836
+ unsigned char OperandFlags,
18837
18837
bool LoadGlobalBaseReg = false,
18838
18838
bool LocalDynamic = false) {
18839
18839
MachineFrameInfo &MFI = DAG.getMachineFunction().getFrameInfo();
18840
18840
SDVTList NodeTys = DAG.getVTList(MVT::Other, MVT::Glue);
18841
18841
SDLoc dl(GA);
18842
18842
SDValue TGA;
18843
18843
bool UseTLSDESC = DAG.getTarget().useTLSDESC();
18844
+ SDValue Chain = DAG.getEntryNode();
18844
18845
SDValue Ret;
18845
18846
if (LocalDynamic && UseTLSDESC) {
18846
18847
TGA = DAG.getTargetExternalSymbol("_TLS_MODULE_BASE_", PtrVT, OperandFlags);
@@ -18908,24 +18909,22 @@ static SDValue GetTLSADDR(SelectionDAG &DAG, SDValue Chain,
18908
18909
static SDValue
18909
18910
LowerToTLSGeneralDynamicModel32(GlobalAddressSDNode *GA, SelectionDAG &DAG,
18910
18911
const EVT PtrVT) {
18911
- return GetTLSADDR(DAG, DAG.getEntryNode(), GA, PtrVT, X86::EAX,
18912
- X86II::MO_TLSGD, /*LoadGlobalBaseReg=*/true);
18912
+ return GetTLSADDR(DAG, GA, PtrVT, X86::EAX, X86II::MO_TLSGD ,
18913
+ /*LoadGlobalBaseReg=*/true);
18913
18914
}
18914
18915
18915
18916
// Lower ISD::GlobalTLSAddress using the "general dynamic" model, 64 bit LP64
18916
18917
static SDValue
18917
18918
LowerToTLSGeneralDynamicModel64(GlobalAddressSDNode *GA, SelectionDAG &DAG,
18918
18919
const EVT PtrVT) {
18919
- return GetTLSADDR(DAG, DAG.getEntryNode(), GA, PtrVT, X86::RAX,
18920
- X86II::MO_TLSGD);
18920
+ return GetTLSADDR(DAG, GA, PtrVT, X86::RAX, X86II::MO_TLSGD);
18921
18921
}
18922
18922
18923
18923
// Lower ISD::GlobalTLSAddress using the "general dynamic" model, 64 bit ILP32
18924
18924
static SDValue
18925
18925
LowerToTLSGeneralDynamicModelX32(GlobalAddressSDNode *GA, SelectionDAG &DAG,
18926
18926
const EVT PtrVT) {
18927
- return GetTLSADDR(DAG, DAG.getEntryNode(), GA, PtrVT, X86::EAX,
18928
- X86II::MO_TLSGD);
18927
+ return GetTLSADDR(DAG, GA, PtrVT, X86::EAX, X86II::MO_TLSGD);
18929
18928
}
18930
18929
18931
18930
static SDValue LowerToTLSLocalDynamicModel(GlobalAddressSDNode *GA,
@@ -18941,12 +18940,12 @@ static SDValue LowerToTLSLocalDynamicModel(GlobalAddressSDNode *GA,
18941
18940
SDValue Base;
18942
18941
if (Is64Bit) {
18943
18942
unsigned ReturnReg = Is64BitLP64 ? X86::RAX : X86::EAX;
18944
- Base = GetTLSADDR(DAG, DAG.getEntryNode(), GA, PtrVT, ReturnReg,
18945
- X86II::MO_TLSLD, /*LoadGlobalBaseReg=*/false,
18943
+ Base = GetTLSADDR(DAG, GA, PtrVT, ReturnReg, X86II::MO_TLSLD ,
18944
+ /*LoadGlobalBaseReg=*/false,
18946
18945
/*LocalDynamic=*/true);
18947
18946
} else {
18948
- Base = GetTLSADDR(DAG, DAG.getEntryNode(), GA, PtrVT, X86::EAX,
18949
- X86II::MO_TLSLDM, /*LoadGlobalBaseReg=*/true,
18947
+ Base = GetTLSADDR(DAG, GA, PtrVT, X86::EAX, X86II::MO_TLSLDM ,
18948
+ /*LoadGlobalBaseReg=*/true,
18950
18949
/*LocalDynamic=*/true);
18951
18950
}
18952
18951
0 commit comments