Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1477)

Unified Diff: test/cctest/compiler/test-gap-resolver.cc

Issue 2176173003: [Turbofan] Revert FP register aliasing support on Arm. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Rebase. Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/register-configuration.cc ('k') | test/cctest/compiler/test-run-native-calls.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/cctest/compiler/test-gap-resolver.cc
diff --git a/test/cctest/compiler/test-gap-resolver.cc b/test/cctest/compiler/test-gap-resolver.cc
index 3de8698141e2f8dff7a04d2a0566609bfaefa8f5..b8b12517247faa16395b0bb4e7d48486b38d6d99 100644
--- a/test/cctest/compiler/test-gap-resolver.cc
+++ b/test/cctest/compiler/test-gap-resolver.cc
@@ -83,8 +83,7 @@ class InterpreterState {
const LocationOperand& loc_op = LocationOperand::cast(op);
if (loc_op.IsAnyRegister()) {
if (loc_op.IsFPRegister()) {
- rep = kSimpleFPAliasing ? MachineRepresentation::kFloat64
- : loc_op.representation();
+ rep = MachineRepresentation::kFloat64;
}
index = loc_op.register_code();
} else {
@@ -186,10 +185,7 @@ class ParallelMoveCreator : public HandleAndZoneScope {
case 1:
return MachineRepresentation::kWord64;
case 2:
- // TODO(bbudge) Re-enable float operands when GapResolver correctly
- // handles FP aliasing.
- return kSimpleFPAliasing ? MachineRepresentation::kFloat32
- : MachineRepresentation::kFloat64;
+ return MachineRepresentation::kFloat32;
case 3:
return MachineRepresentation::kFloat64;
case 4:
@@ -205,13 +201,18 @@ class ParallelMoveCreator : public HandleAndZoneScope {
auto GetRegisterCode = [&conf](MachineRepresentation rep, int index) {
switch (rep) {
case MachineRepresentation::kFloat32:
+#if V8_TARGET_ARCH_ARM
+ // Only even number float registers are used on Arm.
+ // TODO(bbudge) Eliminate this when FP register aliasing works.
+ return conf->RegisterConfiguration::GetAllocatableDoubleCode(index) *
+ 2;
+#endif
+ // Fall through on non-Arm targets.
case MachineRepresentation::kFloat64:
return conf->RegisterConfiguration::GetAllocatableDoubleCode(index);
- break;
default:
return conf->RegisterConfiguration::GetAllocatableGeneralCode(index);
- break;
}
UNREACHABLE();
return static_cast<int>(Register::kCode_no_reg);
« no previous file with comments | « src/register-configuration.cc ('k') | test/cctest/compiler/test-run-native-calls.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698