Changeset View
Changeset View
Standalone View
Standalone View
clang/lib/CodeGen/ItaniumCXXABI.cpp
Show First 20 Lines • Show All 2,325 Lines • ▼ Show 20 Lines | if (UseARMGuardVarABI) { | ||||
guardTy = CGF.SizeTy; | guardTy = CGF.SizeTy; | ||||
guardAlignment = CGF.getSizeAlign(); | guardAlignment = CGF.getSizeAlign(); | ||||
} else { | } else { | ||||
guardTy = CGF.Int64Ty; | guardTy = CGF.Int64Ty; | ||||
guardAlignment = CharUnits::fromQuantity( | guardAlignment = CharUnits::fromQuantity( | ||||
CGM.getDataLayout().getABITypeAlignment(guardTy)); | CGM.getDataLayout().getABITypeAlignment(guardTy)); | ||||
} | } | ||||
} | } | ||||
llvm::PointerType *guardPtrTy = guardTy->getPointerTo(); | llvm::PointerType *guardPtrTy = guardTy->getPointerTo( | ||||
CGF.CGM.getDataLayout().getDefaultGlobalsAddressSpace()); | |||||
// Create the guard variable if we don't already have it (as we | // Create the guard variable if we don't already have it (as we | ||||
// might if we're double-emitting this function body). | // might if we're double-emitting this function body). | ||||
llvm::GlobalVariable *guard = CGM.getStaticLocalDeclGuardAddress(&D); | llvm::GlobalVariable *guard = CGM.getStaticLocalDeclGuardAddress(&D); | ||||
if (!guard) { | if (!guard) { | ||||
// Mangle the name for the guard. | // Mangle the name for the guard. | ||||
SmallString<256> guardName; | SmallString<256> guardName; | ||||
{ | { | ||||
▲ Show 20 Lines • Show All 2,358 Lines • Show Last 20 Lines |