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

Unified Diff: src/compiler/gap-resolver.h

Issue 2410673002: [Turbofan] Add concept of FP register aliasing on ARM 32. (Closed)
Patch Set: Add a TODO. Created 4 years, 2 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/compiler/arm/code-generator-arm.cc ('k') | src/compiler/gap-resolver.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/compiler/gap-resolver.h
diff --git a/src/compiler/gap-resolver.h b/src/compiler/gap-resolver.h
index 19806f568a82faf27b5d6e60f12b195d1bed5208..d4c402587f27ebed21d0660cd63bd82b6ba4e34f 100644
--- a/src/compiler/gap-resolver.h
+++ b/src/compiler/gap-resolver.h
@@ -26,18 +26,24 @@ class GapResolver final {
InstructionOperand* destination) = 0;
};
- explicit GapResolver(Assembler* assembler) : assembler_(assembler) {}
+ explicit GapResolver(Assembler* assembler)
+ : assembler_(assembler), split_rep_(MachineRepresentation::kSimd128) {}
// Resolve a set of parallel moves, emitting assembler instructions.
- void Resolve(ParallelMove* parallel_move) const;
+ void Resolve(ParallelMove* parallel_move);
private:
- // Perform the given move, possibly requiring other moves to satisfy
- // dependencies.
- void PerformMove(ParallelMove* moves, MoveOperands* move) const;
+ // Performs the given move, possibly performing other moves to unblock the
+ // destination operand.
+ void PerformMove(ParallelMove* moves, MoveOperands* move);
// Assembler used to emit moves and save registers.
Assembler* const assembler_;
+
+ // While resolving moves, the largest FP representation that can be moved.
+ // Any larger moves must be split into an equivalent series of moves of this
+ // representation.
+ MachineRepresentation split_rep_;
};
} // namespace compiler
« no previous file with comments | « src/compiler/arm/code-generator-arm.cc ('k') | src/compiler/gap-resolver.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698