Index: src/IceInstX8664.cpp |
diff --git a/src/IceInstX8664.cpp b/src/IceInstX8664.cpp |
index c682d9e26508f87b72e3147929952466665d09a9..e7130edc1511371fe0d04ceb57c6a8d4802b6825 100644 |
--- a/src/IceInstX8664.cpp |
+++ b/src/IceInstX8664.cpp |
@@ -29,10 +29,10 @@ |
namespace Ice { |
-namespace X86Internal { |
+namespace X8664 { |
-const MachineTraits<TargetX8664>::InstBrAttributesType |
- MachineTraits<TargetX8664>::InstBrAttributes[] = { |
+const TargetX8664Traits::InstBrAttributesType |
+ TargetX8664Traits::InstBrAttributes[] = { |
#define X(val, encode, opp, dump, emit) \ |
{ X8664::Traits::Cond::opp, dump, emit } \ |
, |
@@ -40,8 +40,8 @@ const MachineTraits<TargetX8664>::InstBrAttributesType |
#undef X |
}; |
-const MachineTraits<TargetX8664>::InstCmppsAttributesType |
- MachineTraits<TargetX8664>::InstCmppsAttributes[] = { |
+const TargetX8664Traits::InstCmppsAttributesType |
+ TargetX8664Traits::InstCmppsAttributes[] = { |
#define X(val, emit) \ |
{ emit } \ |
, |
@@ -49,8 +49,8 @@ const MachineTraits<TargetX8664>::InstCmppsAttributesType |
#undef X |
}; |
-const MachineTraits<TargetX8664>::TypeAttributesType |
- MachineTraits<TargetX8664>::TypeAttributes[] = { |
+const TargetX8664Traits::TypeAttributesType |
+ TargetX8664Traits::TypeAttributes[] = { |
#define X(tag, elementty, cvt, sdss, pdps, spsd, pack, width, fld) \ |
{ cvt, sdss, pdps, spsd, pack, width, fld } \ |
, |
@@ -58,17 +58,15 @@ const MachineTraits<TargetX8664>::TypeAttributesType |
#undef X |
}; |
-void MachineTraits<TargetX8664>::X86Operand::dump(const Cfg *, |
- Ostream &Str) const { |
+void TargetX8664Traits::X86Operand::dump(const Cfg *, Ostream &Str) const { |
if (BuildDefs::dump()) |
Str << "<OperandX8664>"; |
} |
-MachineTraits<TargetX8664>::X86OperandMem::X86OperandMem(Cfg *Func, Type Ty, |
- Variable *Base, |
- Constant *Offset, |
- Variable *Index, |
- uint16_t Shift) |
+TargetX8664Traits::X86OperandMem::X86OperandMem(Cfg *Func, Type Ty, |
+ Variable *Base, |
+ Constant *Offset, |
+ Variable *Index, uint16_t Shift) |
: X86Operand(kMem, Ty), Base(Base), Offset(Offset), Index(Index), |
Shift(Shift) { |
assert(Shift <= 3); |
@@ -90,8 +88,9 @@ MachineTraits<TargetX8664>::X86OperandMem::X86OperandMem(Cfg *Func, Type Ty, |
} |
namespace { |
-static int32_t getRematerializableOffset(Variable *Var, |
- const Ice::TargetX8664 *Target) { |
+static int32_t |
+getRematerializableOffset(Variable *Var, |
+ const ::Ice::X8664::TargetX8664 *Target) { |
int32_t Disp = Var->getStackOffset(); |
SizeT RegNum = static_cast<SizeT>(Var->getRegNum()); |
if (RegNum == Target->getFrameReg()) { |
@@ -103,10 +102,11 @@ static int32_t getRematerializableOffset(Variable *Var, |
} |
} // end of anonymous namespace |
-void MachineTraits<TargetX8664>::X86OperandMem::emit(const Cfg *Func) const { |
+void TargetX8664Traits::X86OperandMem::emit(const Cfg *Func) const { |
if (!BuildDefs::dump()) |
return; |
- const auto *Target = static_cast<const Ice::TargetX8664 *>(Func->getTarget()); |
+ const auto *Target = |
+ static_cast<const ::Ice::X8664::TargetX8664 *>(Func->getTarget()); |
// If the base is rematerializable, we need to replace it with the correct |
// physical register (stack or base pointer), and update the Offset. |
int32_t Disp = 0; |
@@ -164,14 +164,15 @@ void MachineTraits<TargetX8664>::X86OperandMem::emit(const Cfg *Func) const { |
} |
} |
-void MachineTraits<TargetX8664>::X86OperandMem::dump(const Cfg *Func, |
- Ostream &Str) const { |
+void TargetX8664Traits::X86OperandMem::dump(const Cfg *Func, |
+ Ostream &Str) const { |
if (!BuildDefs::dump()) |
return; |
bool Dumped = false; |
Str << "["; |
int32_t Disp = 0; |
- const auto *Target = static_cast<const Ice::TargetX8664 *>(Func->getTarget()); |
+ const auto *Target = |
+ static_cast<const ::Ice::X8664::TargetX8664 *>(Func->getTarget()); |
if (getBase() && getBase()->isRematerializable()) { |
Disp += getRematerializableOffset(getBase(), Target); |
} |
@@ -223,11 +224,11 @@ void MachineTraits<TargetX8664>::X86OperandMem::dump(const Cfg *Func, |
Str << "]"; |
} |
-MachineTraits<TargetX8664>::Address |
-MachineTraits<TargetX8664>::X86OperandMem::toAsmAddress( |
- MachineTraits<TargetX8664>::Assembler *Asm, |
+TargetX8664Traits::Address TargetX8664Traits::X86OperandMem::toAsmAddress( |
+ TargetX8664Traits::Assembler *Asm, |
const Ice::TargetLowering *TargetLowering) const { |
- const auto *Target = static_cast<const Ice::TargetX8664 *>(TargetLowering); |
+ const auto *Target = |
+ static_cast<const ::Ice::X8664::TargetX8664 *>(TargetLowering); |
int32_t Disp = 0; |
if (getBase() && getBase()->isRematerializable()) { |
Disp += getRematerializableOffset(getBase(), Target); |
@@ -266,8 +267,8 @@ MachineTraits<TargetX8664>::X86OperandMem::toAsmAddress( |
} |
} |
-MachineTraits<TargetX8664>::Address |
-MachineTraits<TargetX8664>::VariableSplit::toAsmAddress(const Cfg *Func) const { |
+TargetX8664Traits::Address |
+TargetX8664Traits::VariableSplit::toAsmAddress(const Cfg *Func) const { |
assert(!Var->hasReg()); |
const ::Ice::TargetLowering *Target = Func->getTarget(); |
int32_t Offset = Var->getStackOffset() + getOffset(); |
@@ -275,7 +276,7 @@ MachineTraits<TargetX8664>::VariableSplit::toAsmAddress(const Cfg *Func) const { |
Offset, AssemblerFixup::NoFixup); |
} |
-void MachineTraits<TargetX8664>::VariableSplit::emit(const Cfg *Func) const { |
+void TargetX8664Traits::VariableSplit::emit(const Cfg *Func) const { |
if (!BuildDefs::dump()) |
return; |
Ostream &Str = Func->getContext()->getStrEmit(); |
@@ -289,8 +290,8 @@ void MachineTraits<TargetX8664>::VariableSplit::emit(const Cfg *Func) const { |
Str << "(%" << Target->getRegName(Target->getFrameOrStackReg(), Ty) << ")"; |
} |
-void MachineTraits<TargetX8664>::VariableSplit::dump(const Cfg *Func, |
- Ostream &Str) const { |
+void TargetX8664Traits::VariableSplit::dump(const Cfg *Func, |
+ Ostream &Str) const { |
if (!BuildDefs::dump()) |
return; |
switch (Part) { |
@@ -309,7 +310,7 @@ void MachineTraits<TargetX8664>::VariableSplit::dump(const Cfg *Func, |
Str << ")"; |
} |
-} // namespace X86Internal |
+} // namespace X8664 |
} // end of namespace Ice |
-X86INSTS_DEFINE_STATIC_DATA(TargetX8664) |
+X86INSTS_DEFINE_STATIC_DATA(X8664, X8664::Traits) |