[jumbo] Avoid collision between two kFloat32Bit

In jumbo builds, many files are compiled in the same translation
unit and share the same anonymous namespace. Now both gap_resolver.cc and
register-allocator.cc defined kFloat32Bit (a mask representation
of MachineRepresentation::kFloat32) which clashed if those
files were compiled together.

This patch inlines and removed one of the constants.

Change-Id: Ic79e077e62ce9866b6201ec61a9df1e66d5e4a13
Reviewed-on: https://chromium-review.googlesource.com/1206572
Reviewed-by: Bill Budge <bbudge@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Commit-Position: refs/heads/master@{#55677}
This commit is contained in:
Daniel Bratell 2018-09-05 16:55:33 +02:00 committed by Commit Bot
parent 1120b5aa6e
commit 00c486bdba

View File

@ -13,11 +13,6 @@ namespace compiler {
namespace {
static constexpr int kFloat32Bit =
RepresentationBit(MachineRepresentation::kFloat32);
static constexpr int kFloat64Bit =
RepresentationBit(MachineRepresentation::kFloat64);
// Splits a FP move between two location operands into the equivalent series of
// moves between smaller sub-operands, e.g. a double move to two single moves.
// This helps reduce the number of cycles that would normally occur under FP
@ -100,7 +95,7 @@ void GapResolver::Resolve(ParallelMove* moves) {
if (reps && !base::bits::IsPowerOfTwo(reps)) {
// Start with the smallest FP moves, so we never encounter smaller moves
// in the middle of a cycle of larger moves.
if ((reps & kFloat32Bit) != 0) {
if ((reps & RepresentationBit(MachineRepresentation::kFloat32)) != 0) {
split_rep_ = MachineRepresentation::kFloat32;
for (size_t i = 0; i < moves->size(); ++i) {
auto move = (*moves)[i];
@ -108,7 +103,7 @@ void GapResolver::Resolve(ParallelMove* moves) {
PerformMove(moves, move);
}
}
if ((reps & kFloat64Bit) != 0) {
if ((reps & RepresentationBit(MachineRepresentation::kFloat64)) != 0) {
split_rep_ = MachineRepresentation::kFloat64;
for (size_t i = 0; i < moves->size(); ++i) {
auto move = (*moves)[i];