Skip to content
This repository was archived by the owner on Apr 23, 2020. It is now read-only.

Commit 2078d8c

Browse files
committed
[Alignment][NFC] Use Align for TargetFrameLowering/Subtarget
Summary: This is patch is part of a series to introduce an Alignment type. See this thread for context: http://lists.llvm.org/pipermail/llvm-dev/2019-July/133851.html See this patch for the introduction of the type: https://reviews.llvm.org/D64790 Reviewers: courbet Subscribers: jholewinski, arsenm, dschuff, jyknight, dylanmckay, sdardis, nemanjai, jvesely, nhaehnle, sbc100, jgravelle-google, hiraditya, aheejin, kbarton, fedor.sergeev, asb, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, jrtc27, MaskRay, zzheng, edward-jones, atanasyan, rogfer01, MartinMosbeck, brucehoult, the_o, PkmX, jocewei, jsji, Jim, lenary, s.egerton, pzheng, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D68993 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@375084 91177308-0d34-0410-b5e6-96231b3b80d8
1 parent dfe2edf commit 2078d8c

35 files changed

+95
-89
lines changed

include/llvm/CodeGen/TargetFrameLowering.h

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -54,15 +54,15 @@ class TargetFrameLowering {
5454
};
5555
private:
5656
StackDirection StackDir;
57-
unsigned StackAlignment;
57+
Align StackAlignment;
5858
unsigned TransientStackAlignment;
5959
int LocalAreaOffset;
6060
bool StackRealignable;
6161
public:
62-
TargetFrameLowering(StackDirection D, unsigned StackAl, int LAO,
62+
TargetFrameLowering(StackDirection D, Align StackAl, int LAO,
6363
unsigned TransAl = 1, bool StackReal = true)
64-
: StackDir(D), StackAlignment(StackAl), TransientStackAlignment(TransAl),
65-
LocalAreaOffset(LAO), StackRealignable(StackReal) {}
64+
: StackDir(D), StackAlignment(StackAl), TransientStackAlignment(TransAl),
65+
LocalAreaOffset(LAO), StackRealignable(StackReal) {}
6666

6767
virtual ~TargetFrameLowering();
6868

@@ -77,7 +77,7 @@ class TargetFrameLowering {
7777
/// stack pointer must be aligned on entry to a function. Typically, this
7878
/// is the largest alignment for any data object in the target.
7979
///
80-
unsigned getStackAlignment() const { return StackAlignment; }
80+
unsigned getStackAlignment() const { return StackAlignment.value(); }
8181

8282
/// alignSPAdjust - This method aligns the stack adjustment to the correct
8383
/// alignment.

lib/Target/AArch64/AArch64FrameLowering.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ namespace llvm {
2121
class AArch64FrameLowering : public TargetFrameLowering {
2222
public:
2323
explicit AArch64FrameLowering()
24-
: TargetFrameLowering(StackGrowsDown, 16, 0, 16,
24+
: TargetFrameLowering(StackGrowsDown, Align(16), 0, 16,
2525
true /*StackRealignable*/) {}
2626

2727
void emitCalleeSavedFrameMoves(MachineBasicBlock &MBB,

lib/Target/AMDGPU/AMDGPUFrameLowering.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@
1313
#include "AMDGPUFrameLowering.h"
1414

1515
using namespace llvm;
16-
AMDGPUFrameLowering::AMDGPUFrameLowering(StackDirection D, unsigned StackAl,
17-
int LAO, unsigned TransAl)
18-
: TargetFrameLowering(D, StackAl, LAO, TransAl) { }
16+
AMDGPUFrameLowering::AMDGPUFrameLowering(StackDirection D, Align StackAl,
17+
int LAO, unsigned TransAl)
18+
: TargetFrameLowering(D, StackAl, LAO, TransAl) {}
1919

2020
AMDGPUFrameLowering::~AMDGPUFrameLowering() = default;
2121

lib/Target/AMDGPU/AMDGPUFrameLowering.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ namespace llvm {
2525
/// See TargetFrameInfo for more comments.
2626
class AMDGPUFrameLowering : public TargetFrameLowering {
2727
public:
28-
AMDGPUFrameLowering(StackDirection D, unsigned StackAl, int LAO,
28+
AMDGPUFrameLowering(StackDirection D, Align StackAl, int LAO,
2929
unsigned TransAl = 1);
3030
~AMDGPUFrameLowering() override;
3131

lib/Target/AMDGPU/AMDGPUSubtarget.h

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -866,9 +866,7 @@ class GCNSubtarget : public AMDGPUGenSubtargetInfo,
866866
// on the pointer value itself may rely on the alignment / known low bits of
867867
// the pointer. Set this to something above the minimum to avoid needing
868868
// dynamic realignment in common cases.
869-
unsigned getStackAlignment() const {
870-
return 16;
871-
}
869+
Align getStackAlignment() const { return Align(16); }
872870

873871
bool enableMachineScheduler() const override {
874872
return true;
@@ -1257,9 +1255,7 @@ class R600Subtarget final : public R600GenSubtargetInfo,
12571255
return Gen;
12581256
}
12591257

1260-
unsigned getStackAlignment() const {
1261-
return 4;
1262-
}
1258+
Align getStackAlignment() const { return Align(4); }
12631259

12641260
R600Subtarget &initializeSubtargetDependencies(const Triple &TT,
12651261
StringRef GPU, StringRef FS);

lib/Target/AMDGPU/R600FrameLowering.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ namespace llvm {
1515

1616
class R600FrameLowering : public AMDGPUFrameLowering {
1717
public:
18-
R600FrameLowering(StackDirection D, unsigned StackAl, int LAO,
19-
unsigned TransAl = 1) :
20-
AMDGPUFrameLowering(D, StackAl, LAO, TransAl) {}
18+
R600FrameLowering(StackDirection D, Align StackAl, int LAO,
19+
unsigned TransAl = 1)
20+
: AMDGPUFrameLowering(D, StackAl, LAO, TransAl) {}
2121
~R600FrameLowering() override;
2222

2323
void emitPrologue(MachineFunction &MF,

lib/Target/AMDGPU/SIFrameLowering.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ class GCNSubtarget;
2020

2121
class SIFrameLowering final : public AMDGPUFrameLowering {
2222
public:
23-
SIFrameLowering(StackDirection D, unsigned StackAl, int LAO,
24-
unsigned TransAl = 1) :
25-
AMDGPUFrameLowering(D, StackAl, LAO, TransAl) {}
23+
SIFrameLowering(StackDirection D, Align StackAl, int LAO,
24+
unsigned TransAl = 1)
25+
: AMDGPUFrameLowering(D, StackAl, LAO, TransAl) {}
2626
~SIFrameLowering() override = default;
2727

2828
void emitEntryFunctionPrologue(MachineFunction &MF,

lib/Target/AMDGPU/SIISelLowering.cpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2816,16 +2816,18 @@ SDValue SITargetLowering::LowerCall(CallLoweringInfo &CLI,
28162816
int32_t Offset = LocMemOffset;
28172817

28182818
SDValue PtrOff = DAG.getConstant(Offset, DL, PtrVT);
2819-
unsigned Align = 0;
2819+
MaybeAlign Alignment;
28202820

28212821
if (IsTailCall) {
28222822
ISD::ArgFlagsTy Flags = Outs[realArgIdx].Flags;
28232823
unsigned OpSize = Flags.isByVal() ?
28242824
Flags.getByValSize() : VA.getValVT().getStoreSize();
28252825

28262826
// FIXME: We can have better than the minimum byval required alignment.
2827-
Align = Flags.isByVal() ? Flags.getByValAlign() :
2828-
MinAlign(Subtarget->getStackAlignment(), Offset);
2827+
Alignment =
2828+
Flags.isByVal()
2829+
? MaybeAlign(Flags.getByValAlign())
2830+
: commonAlignment(Subtarget->getStackAlignment(), Offset);
28292831

28302832
Offset = Offset + FPDiff;
28312833
int FI = MFI.CreateFixedObject(OpSize, Offset, true);
@@ -2844,7 +2846,8 @@ SDValue SITargetLowering::LowerCall(CallLoweringInfo &CLI,
28442846
} else {
28452847
DstAddr = PtrOff;
28462848
DstInfo = MachinePointerInfo::getStack(MF, LocMemOffset);
2847-
Align = MinAlign(Subtarget->getStackAlignment(), LocMemOffset);
2849+
Alignment =
2850+
commonAlignment(Subtarget->getStackAlignment(), LocMemOffset);
28482851
}
28492852

28502853
if (Outs[i].Flags.isByVal()) {
@@ -2859,7 +2862,8 @@ SDValue SITargetLowering::LowerCall(CallLoweringInfo &CLI,
28592862

28602863
MemOpChains.push_back(Cpy);
28612864
} else {
2862-
SDValue Store = DAG.getStore(Chain, DL, Arg, DstAddr, DstInfo, Align);
2865+
SDValue Store = DAG.getStore(Chain, DL, Arg, DstAddr, DstInfo,
2866+
Alignment ? Alignment->value() : 0);
28632867
MemOpChains.push_back(Store);
28642868
}
28652869
}

lib/Target/ARC/ARCFrameLowering.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ class ARCInstrInfo;
2727
class ARCFrameLowering : public TargetFrameLowering {
2828
public:
2929
ARCFrameLowering(const ARCSubtarget &st)
30-
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, 4, 0), ST(st) {
31-
}
30+
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, Align(4), 0),
31+
ST(st) {}
3232

3333
/// Insert Prologue into the function.
3434
void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;

lib/Target/ARM/ARMSubtarget.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -205,9 +205,9 @@ void ARMSubtarget::initSubtargetFeatures(StringRef CPU, StringRef FS) {
205205
NoARM = true;
206206

207207
if (isAAPCS_ABI())
208-
stackAlignment = 8;
208+
stackAlignment = Align(8);
209209
if (isTargetNaCl() || isAAPCS16_ABI())
210-
stackAlignment = 16;
210+
stackAlignment = Align(16);
211211

212212
// FIXME: Completely disable sibcall for Thumb1 since ThumbRegisterInfo::
213213
// emitEpilogue is not ready for them. Thumb tail calls also use t2B, as

lib/Target/ARM/ARMSubtarget.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,7 @@ class ARMSubtarget : public ARMGenSubtargetInfo {
449449

450450
/// stackAlignment - The minimum alignment known to hold of the stack frame on
451451
/// entry to the function and which must be maintained by every function.
452-
unsigned stackAlignment = 4;
452+
Align stackAlignment = Align(4);
453453

454454
/// CPUString - String name of used CPU.
455455
std::string CPUString;
@@ -816,7 +816,7 @@ class ARMSubtarget : public ARMGenSubtargetInfo {
816816
/// getStackAlignment - Returns the minimum alignment known to hold of the
817817
/// stack frame on entry to the function and which must be maintained by every
818818
/// function for this subtarget.
819-
unsigned getStackAlignment() const { return stackAlignment; }
819+
Align getStackAlignment() const { return stackAlignment; }
820820

821821
unsigned getMaxInterleaveFactor() const { return MaxInterleaveFactor; }
822822

lib/Target/AVR/AVRFrameLowering.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@
3030
namespace llvm {
3131

3232
AVRFrameLowering::AVRFrameLowering()
33-
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, 1, -2) {}
33+
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, Align::None(),
34+
-2) {}
3435

3536
bool AVRFrameLowering::canSimplifyCallFramePseudos(
3637
const MachineFunction &MF) const {

lib/Target/BPF/BPFFrameLowering.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class BPFSubtarget;
2121
class BPFFrameLowering : public TargetFrameLowering {
2222
public:
2323
explicit BPFFrameLowering(const BPFSubtarget &sti)
24-
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, 8, 0) {}
24+
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, Align(8), 0) {}
2525

2626
void emitPrologue(MachineFunction &MF, MachineBasicBlock &MBB) const override;
2727
void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const override;

lib/Target/Hexagon/HexagonFrameLowering.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class TargetRegisterClass;
3030
class HexagonFrameLowering : public TargetFrameLowering {
3131
public:
3232
explicit HexagonFrameLowering()
33-
: TargetFrameLowering(StackGrowsDown, 8, 0, 1, true) {}
33+
: TargetFrameLowering(StackGrowsDown, Align(8), 0, 1, true) {}
3434

3535
// All of the prolog/epilog functionality, including saving and restoring
3636
// callee-saved registers is handled in emitPrologue. This is to have the

lib/Target/Lanai/LanaiFrameLowering.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ class LanaiFrameLowering : public TargetFrameLowering {
3131
public:
3232
explicit LanaiFrameLowering(const LanaiSubtarget &Subtarget)
3333
: TargetFrameLowering(StackGrowsDown,
34-
/*StackAlignment=*/8,
34+
/*StackAlignment=*/Align(8),
3535
/*LocalAreaOffset=*/0),
3636
STI(Subtarget) {}
3737

lib/Target/MSP430/MSP430FrameLowering.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ class MSP430FrameLowering : public TargetFrameLowering {
2222

2323
public:
2424
explicit MSP430FrameLowering()
25-
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, 2, -2, 2) {}
25+
: TargetFrameLowering(TargetFrameLowering::StackGrowsDown, Align(2), -2,
26+
2) {}
2627

2728
/// emitProlog/emitEpilog - These methods insert prolog and epilog code into
2829
/// the function.

lib/Target/Mips/MipsAsmPrinter.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -781,7 +781,7 @@ void MipsAsmPrinter::EmitStartOfAsmFile(Module &M) {
781781
StringRef CPU = MIPS_MC::selectMipsCPU(TT, TM.getTargetCPU());
782782
StringRef FS = TM.getTargetFeatureString();
783783
const MipsTargetMachine &MTM = static_cast<const MipsTargetMachine &>(TM);
784-
const MipsSubtarget STI(TT, CPU, FS, MTM.isLittleEndian(), MTM, 0);
784+
const MipsSubtarget STI(TT, CPU, FS, MTM.isLittleEndian(), MTM, None);
785785

786786
bool IsABICalls = STI.isABICalls();
787787
const MipsABIInfo &ABI = MTM.getABI();

lib/Target/Mips/MipsFrameLowering.h

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ class MipsFrameLowering : public TargetFrameLowering {
2424
const MipsSubtarget &STI;
2525

2626
public:
27-
explicit MipsFrameLowering(const MipsSubtarget &sti, unsigned Alignment)
28-
: TargetFrameLowering(StackGrowsDown, Alignment, 0, Alignment), STI(sti) {}
27+
explicit MipsFrameLowering(const MipsSubtarget &sti, Align Alignment)
28+
: TargetFrameLowering(StackGrowsDown, Alignment, 0, Alignment.value()),
29+
STI(sti) {}
2930

3031
static const MipsFrameLowering *create(const MipsSubtarget &ST);
3132

lib/Target/Mips/MipsSubtarget.cpp

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ void MipsSubtarget::anchor() {}
6969

7070
MipsSubtarget::MipsSubtarget(const Triple &TT, StringRef CPU, StringRef FS,
7171
bool little, const MipsTargetMachine &TM,
72-
unsigned StackAlignOverride)
72+
MaybeAlign StackAlignOverride)
7373
: MipsGenSubtargetInfo(TT, CPU, FS), MipsArchVersion(MipsDefault),
7474
IsLittle(little), IsSoftFloat(false), IsSingleFloat(false), IsFPXX(false),
7575
NoABICalls(false), Abs2008(false), IsFP64bit(false), UseOddSPReg(true),
@@ -81,10 +81,9 @@ MipsSubtarget::MipsSubtarget(const Triple &TT, StringRef CPU, StringRef FS,
8181
Os16(Mips_Os16), HasMSA(false), UseTCCInDIV(false), HasSym32(false),
8282
HasEVA(false), DisableMadd4(false), HasMT(false), HasCRC(false),
8383
HasVirt(false), HasGINV(false), UseIndirectJumpsHazard(false),
84-
StackAlignOverride(StackAlignOverride),
85-
TM(TM), TargetTriple(TT), TSInfo(),
86-
InstrInfo(
87-
MipsInstrInfo::create(initializeSubtargetDependencies(CPU, FS, TM))),
84+
StackAlignOverride(StackAlignOverride), TM(TM), TargetTriple(TT),
85+
TSInfo(), InstrInfo(MipsInstrInfo::create(
86+
initializeSubtargetDependencies(CPU, FS, TM))),
8887
FrameLowering(MipsFrameLowering::create(*this)),
8988
TLInfo(MipsTargetLowering::create(TM, *this)) {
9089

@@ -248,12 +247,12 @@ MipsSubtarget::initializeSubtargetDependencies(StringRef CPU, StringRef FS,
248247
InMips16HardFloat = true;
249248

250249
if (StackAlignOverride)
251-
stackAlignment = StackAlignOverride;
250+
stackAlignment = *StackAlignOverride;
252251
else if (isABI_N32() || isABI_N64())
253-
stackAlignment = 16;
252+
stackAlignment = Align(16);
254253
else {
255254
assert(isABI_O32() && "Unknown ABI for stack alignment!");
256-
stackAlignment = 8;
255+
stackAlignment = Align(8);
257256
}
258257

259258
return *this;

lib/Target/Mips/MipsSubtarget.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -194,10 +194,10 @@ class MipsSubtarget : public MipsGenSubtargetInfo {
194194

195195
/// The minimum alignment known to hold of the stack frame on
196196
/// entry to the function and which must be maintained by every function.
197-
unsigned stackAlignment;
197+
Align stackAlignment;
198198

199199
/// The overridden stack alignment.
200-
unsigned StackAlignOverride;
200+
MaybeAlign StackAlignOverride;
201201

202202
InstrItineraryData InstrItins;
203203

@@ -230,7 +230,7 @@ class MipsSubtarget : public MipsGenSubtargetInfo {
230230
/// This constructor initializes the data members to match that
231231
/// of the specified triple.
232232
MipsSubtarget(const Triple &TT, StringRef CPU, StringRef FS, bool little,
233-
const MipsTargetMachine &TM, unsigned StackAlignOverride);
233+
const MipsTargetMachine &TM, MaybeAlign StackAlignOverride);
234234

235235
/// ParseSubtargetFeatures - Parses features string setting specified
236236
/// subtarget options. Definition of function is auto generated by tblgen.
@@ -349,7 +349,7 @@ class MipsSubtarget : public MipsGenSubtargetInfo {
349349
// really use them if in addition we are in mips16 mode
350350
static bool useConstantIslands();
351351

352-
unsigned getStackAlignment() const { return stackAlignment; }
352+
Align getStackAlignment() const { return stackAlignment; }
353353

354354
// Grab relocation model
355355
Reloc::Model getRelocationModel() const;

lib/Target/Mips/MipsTargetMachine.cpp

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -119,12 +119,15 @@ MipsTargetMachine::MipsTargetMachine(const Target &T, const Triple &TT,
119119
getEffectiveCodeModel(CM, CodeModel::Small), OL),
120120
isLittle(isLittle), TLOF(std::make_unique<MipsTargetObjectFile>()),
121121
ABI(MipsABIInfo::computeTargetABI(TT, CPU, Options.MCOptions)),
122-
Subtarget(nullptr), DefaultSubtarget(TT, CPU, FS, isLittle, *this,
123-
Options.StackAlignmentOverride),
122+
Subtarget(nullptr),
123+
DefaultSubtarget(TT, CPU, FS, isLittle, *this,
124+
MaybeAlign(Options.StackAlignmentOverride)),
124125
NoMips16Subtarget(TT, CPU, FS.empty() ? "-mips16" : FS.str() + ",-mips16",
125-
isLittle, *this, Options.StackAlignmentOverride),
126+
isLittle, *this,
127+
MaybeAlign(Options.StackAlignmentOverride)),
126128
Mips16Subtarget(TT, CPU, FS.empty() ? "+mips16" : FS.str() + ",+mips16",
127-
isLittle, *this, Options.StackAlignmentOverride) {
129+
isLittle, *this,
130+
MaybeAlign(Options.StackAlignmentOverride)) {
128131
Subtarget = &DefaultSubtarget;
129132
initAsmInfo();
130133
}
@@ -196,8 +199,9 @@ MipsTargetMachine::getSubtargetImpl(const Function &F) const {
196199
// creation will depend on the TM and the code generation flags on the
197200
// function that reside in TargetOptions.
198201
resetTargetOptions(F);
199-
I = std::make_unique<MipsSubtarget>(TargetTriple, CPU, FS, isLittle, *this,
200-
Options.StackAlignmentOverride);
202+
I = std::make_unique<MipsSubtarget>(
203+
TargetTriple, CPU, FS, isLittle, *this,
204+
MaybeAlign(Options.StackAlignmentOverride));
201205
}
202206
return I.get();
203207
}

lib/Target/NVPTX/NVPTXFrameLowering.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
using namespace llvm;
2626

2727
NVPTXFrameLowering::NVPTXFrameLowering()
28-
: TargetFrameLowering(TargetFrameLowering::StackGrowsUp, 8, 0) {}
28+
: TargetFrameLowering(TargetFrameLowering::StackGrowsUp, Align(8), 0) {}
2929

3030
bool NVPTXFrameLowering::hasFP(const MachineFunction &MF) const { return true; }
3131

lib/Target/PowerPC/PPCSubtarget.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ PPCSubtarget::PPCSubtarget(const Triple &TT, const std::string &CPU,
6060
InstrInfo(*this), TLInfo(TM, *this) {}
6161

6262
void PPCSubtarget::initializeEnvironment() {
63-
StackAlignment = 16;
63+
StackAlignment = Align(16);
6464
DarwinDirective = PPC::DIR_NONE;
6565
HasMFOCRF = false;
6666
Has64BitSupport = false;

0 commit comments

Comments
 (0)