summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/code_generator_x86.cc
diff options
context:
space:
mode:
authorAndreas Gampe <agampe@google.com>2015-04-02 23:10:46 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-04-02 23:10:46 +0000
commit97597c9be7f4eb5263a80e7de4684dbfa1427e9a (patch)
tree690dc04c72690a056aa84ac0206f96e5f513b3c2 /compiler/optimizing/code_generator_x86.cc
parent7775d2c1e48c0bb0880f720f3dfbd4b4d0de7c6e (diff)
parentfb8d279bc011b31d0765dc7ca59afea324fd0d0c (diff)
downloadart-97597c9be7f4eb5263a80e7de4684dbfa1427e9a.tar.gz
art-97597c9be7f4eb5263a80e7de4684dbfa1427e9a.tar.bz2
art-97597c9be7f4eb5263a80e7de4684dbfa1427e9a.zip
Merge "[optimizing] Implement x86/x86_64 math intrinsics"
Diffstat (limited to 'compiler/optimizing/code_generator_x86.cc')
-rw-r--r--compiler/optimizing/code_generator_x86.cc9
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler/optimizing/code_generator_x86.cc b/compiler/optimizing/code_generator_x86.cc
index 9b7e01ce5c..f79dbc3513 100644
--- a/compiler/optimizing/code_generator_x86.cc
+++ b/compiler/optimizing/code_generator_x86.cc
@@ -360,7 +360,9 @@ size_t CodeGeneratorX86::RestoreFloatingPointRegister(size_t stack_index, uint32
return GetFloatingPointSpillSlotSize();
}
-CodeGeneratorX86::CodeGeneratorX86(HGraph* graph, const CompilerOptions& compiler_options)
+CodeGeneratorX86::CodeGeneratorX86(HGraph* graph,
+ const X86InstructionSetFeatures& isa_features,
+ const CompilerOptions& compiler_options)
: CodeGenerator(graph,
kNumberOfCpuRegisters,
kNumberOfXmmRegisters,
@@ -373,7 +375,8 @@ CodeGeneratorX86::CodeGeneratorX86(HGraph* graph, const CompilerOptions& compile
block_labels_(graph->GetArena(), 0),
location_builder_(graph, this),
instruction_visitor_(graph, this),
- move_resolver_(graph->GetArena(), this) {
+ move_resolver_(graph->GetArena(), this),
+ isa_features_(isa_features) {
// Use a fake return address register to mimic Quick.
AddAllocatedRegister(Location::RegisterLocation(kFakeReturnRegister));
}
@@ -1163,7 +1166,7 @@ void InstructionCodeGeneratorX86::VisitReturn(HReturn* ret) {
}
void LocationsBuilderX86::VisitInvokeStaticOrDirect(HInvokeStaticOrDirect* invoke) {
- IntrinsicLocationsBuilderX86 intrinsic(GetGraph()->GetArena());
+ IntrinsicLocationsBuilderX86 intrinsic(codegen_);
if (intrinsic.TryDispatch(invoke)) {
return;
}