summaryrefslogtreecommitdiff
path: root/compiler/utils/assembler.cc
diff options
context:
space:
mode:
authorGoran Jakovljevic <Goran.Jakovljevic@imgtec.com>2015-08-26 14:39:44 +0200
committerGoran Jakovljevic <Goran.Jakovljevic@imgtec.com>2015-10-06 16:34:25 +0200
commit8c434dcc78d497e18590461700894d1c3e96013d (patch)
tree6fc88cc839c0415aa90a1bbff25e93a09705d19b /compiler/utils/assembler.cc
parent35ef974da353b13938fb0f3272c03070ad728431 (diff)
MIPS: Assemblers changes needed for optimizing compiler
Also add assembler tests for MIPS32. Change-Id: I3ab1fba7f3b06eb3b5058861946d675494a30775
Diffstat (limited to 'compiler/utils/assembler.cc')
-rw-r--r--compiler/utils/assembler.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/compiler/utils/assembler.cc b/compiler/utils/assembler.cc
index 496ca95ff9..b01b0fe4e0 100644
--- a/compiler/utils/assembler.cc
+++ b/compiler/utils/assembler.cc
@@ -122,7 +122,8 @@ void DebugFrameOpCodeWriterForAssembler::ImplicitlyAdvancePC() {
this->AdvancePC(assembler_->CodeSize());
}
-Assembler* Assembler::Create(InstructionSet instruction_set) {
+Assembler* Assembler::Create(InstructionSet instruction_set,
+ const InstructionSetFeatures* instruction_set_features) {
switch (instruction_set) {
#ifdef ART_ENABLE_CODEGEN_arm
case kArm:
@@ -136,7 +137,9 @@ Assembler* Assembler::Create(InstructionSet instruction_set) {
#endif
#ifdef ART_ENABLE_CODEGEN_mips
case kMips:
- return new mips::MipsAssembler();
+ return new mips::MipsAssembler(instruction_set_features != nullptr
+ ? instruction_set_features->AsMipsInstructionSetFeatures()
+ : nullptr);
#endif
#ifdef ART_ENABLE_CODEGEN_mips64
case kMips64: