| Index: src/IceTargetLoweringX86Base.h
|
| diff --git a/src/IceTargetLoweringX86Base.h b/src/IceTargetLoweringX86Base.h
|
| index 0c2523f9cb97940cbdd4e459b784455a53c6878d..10144939885046f61a386b7d7ccb39b2675e9a3c 100644
|
| --- a/src/IceTargetLoweringX86Base.h
|
| +++ b/src/IceTargetLoweringX86Base.h
|
| @@ -79,6 +79,7 @@ public:
|
| ~TargetX86Base() override = default;
|
|
|
| static void staticInit(GlobalContext *Ctx);
|
| + static bool shouldBePooled(const Constant *C);
|
|
|
| static FixupKind getPcRelFixup() { return PcRelFixup; }
|
| static FixupKind getAbsFixup() { return AbsFixup; }
|
| @@ -95,8 +96,8 @@ public:
|
| }
|
| Variable *getPhysicalRegister(RegNumT RegNum,
|
| Type Ty = IceType_void) override;
|
| - IceString getRegName(RegNumT RegNum, Type Ty) const override;
|
| - static IceString getRegClassName(RegClass C) {
|
| + const char *getRegName(RegNumT RegNum, Type Ty) const override;
|
| + static const char *getRegClassName(RegClass C) {
|
| auto ClassNum = static_cast<RegClassX86>(C);
|
| assert(ClassNum < RCX86_NUM);
|
| switch (ClassNum) {
|
| @@ -174,9 +175,9 @@ public:
|
|
|
| ConstantRelocatable *createGetIPForRegister(const Variable *Dest) {
|
| assert(Dest->hasReg());
|
| - const IceString RegName = Traits::getRegName(Dest->getRegNum());
|
| - return llvm::cast<ConstantRelocatable>(
|
| - Ctx->getConstantExternSym(H_getIP_prefix + RegName));
|
| + const std::string RegName = Traits::getRegName(Dest->getRegNum());
|
| + return llvm::cast<ConstantRelocatable>(Ctx->getConstantExternSym(
|
| + Ctx->getGlobalString(H_getIP_prefix + RegName)));
|
| }
|
|
|
| SizeT getMinJumpTableSize() const override { return 4; }
|
| @@ -1097,7 +1098,7 @@ public:
|
| }
|
|
|
| void lowerGlobals(const VariableDeclarationList &Vars,
|
| - const IceString &SectionSuffix) override;
|
| + const std::string &SectionSuffix) override;
|
| void lowerConstants() override;
|
| void lowerJumpTables() override;
|
|
|
|
|