Add repeat support for memory addresses.
Rationale:
This enables exhaustive testing of instructions
that use memory addresses. First use case of
the generics is x86.
Bug: 18380245
Bug: 18380559
Bug: 18380348
Test: assembler_x86[_64]_test
Change-Id: Ib0ad6fa65477b0c6fc04642ff980a4b9543d16d5
diff --git a/compiler/utils/mips/assembler_mips32r5_test.cc b/compiler/utils/mips/assembler_mips32r5_test.cc
index 24b09b5..a3662db 100644
--- a/compiler/utils/mips/assembler_mips32r5_test.cc
+++ b/compiler/utils/mips/assembler_mips32r5_test.cc
@@ -32,12 +32,14 @@
};
class AssemblerMIPS32r5Test : public AssemblerTest<mips::MipsAssembler,
+ mips::MipsLabel,
mips::Register,
mips::FRegister,
uint32_t,
mips::VectorRegister> {
public:
typedef AssemblerTest<mips::MipsAssembler,
+ mips::MipsLabel,
mips::Register,
mips::FRegister,
uint32_t,
@@ -217,6 +219,11 @@
STLDeleteElements(&vec_registers_);
}
+ std::vector<mips::MipsLabel> GetAddresses() {
+ UNIMPLEMENTED(FATAL) << "Feature not implemented yet";
+ UNREACHABLE();
+ }
+
std::vector<mips::Register*> GetRegisters() OVERRIDE {
return registers_;
}
diff --git a/compiler/utils/mips/assembler_mips32r6_test.cc b/compiler/utils/mips/assembler_mips32r6_test.cc
index a5cd5a7..b6cb30a 100644
--- a/compiler/utils/mips/assembler_mips32r6_test.cc
+++ b/compiler/utils/mips/assembler_mips32r6_test.cc
@@ -32,12 +32,14 @@
};
class AssemblerMIPS32r6Test : public AssemblerTest<mips::MipsAssembler,
+ mips::MipsLabel,
mips::Register,
mips::FRegister,
uint32_t,
mips::VectorRegister> {
public:
typedef AssemblerTest<mips::MipsAssembler,
+ mips::MipsLabel,
mips::Register,
mips::FRegister,
uint32_t,
@@ -230,6 +232,11 @@
STLDeleteElements(&vec_registers_);
}
+ std::vector<mips::MipsLabel> GetAddresses() {
+ UNIMPLEMENTED(FATAL) << "Feature not implemented yet";
+ UNREACHABLE();
+ }
+
std::vector<mips::Register*> GetRegisters() OVERRIDE {
return registers_;
}
diff --git a/compiler/utils/mips/assembler_mips_test.cc b/compiler/utils/mips/assembler_mips_test.cc
index 680c347..eed83a5 100644
--- a/compiler/utils/mips/assembler_mips_test.cc
+++ b/compiler/utils/mips/assembler_mips_test.cc
@@ -32,11 +32,16 @@
};
class AssemblerMIPSTest : public AssemblerTest<mips::MipsAssembler,
+ mips::MipsLabel,
mips::Register,
mips::FRegister,
uint32_t> {
public:
- typedef AssemblerTest<mips::MipsAssembler, mips::Register, mips::FRegister, uint32_t> Base;
+ typedef AssemblerTest<mips::MipsAssembler,
+ mips::MipsLabel,
+ mips::Register,
+ mips::FRegister,
+ uint32_t> Base;
protected:
// Get the typically used name for this architecture, e.g., aarch64, x86-64, ...
@@ -161,6 +166,11 @@
STLDeleteElements(&fp_registers_);
}
+ std::vector<mips::MipsLabel> GetAddresses() {
+ UNIMPLEMENTED(FATAL) << "Feature not implemented yet";
+ UNREACHABLE();
+ }
+
std::vector<mips::Register*> GetRegisters() OVERRIDE {
return registers_;
}