From e3ff7b293be2a6791fe9d135d660c0cffe4bd73f Mon Sep 17 00:00:00 2001 From: David Brazdil Date: Wed, 2 Mar 2016 16:48:20 +0000 Subject: Refactor HGraphBuilder and SsaBuilder to remove HLocals This patch merges the instruction-building phases from HGraphBuilder and SsaBuilder into a single HInstructionBuilder class. As a result, it is not necessary to generate HLocal, HLoadLocal and HStoreLocal instructions any more, as the builder produces SSA form directly. Saves 5-15% of arena-allocated memory (see bug for more data): GMS 20.46MB => 19.26MB (-5.86%) Maps 24.12MB => 21.47MB (-10.98%) YouTube 28.60MB => 26.01MB (-9.05%) Bug: 27894376 Change-Id: Iefe28d40600c169c5d306fd2c77034ae19476d90 --- compiler/optimizing/liveness_test.cc | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'compiler/optimizing/liveness_test.cc') diff --git a/compiler/optimizing/liveness_test.cc b/compiler/optimizing/liveness_test.cc index 92a987cb1d..bd74368e17 100644 --- a/compiler/optimizing/liveness_test.cc +++ b/compiler/optimizing/liveness_test.cc @@ -154,7 +154,7 @@ TEST_F(LivenessTest, CFG4) { // return a; // // Bitsets are made of: - // (constant0, constant4, constant5, phi) + // (constant0, constant5, constant4, phi) const char* expected = "Block 0\n" // entry block " live in: (0000)\n" @@ -165,11 +165,11 @@ TEST_F(LivenessTest, CFG4) { " live out: (0110)\n" " kill: (0000)\n" "Block 2\n" // else block - " live in: (0100)\n" + " live in: (0010)\n" " live out: (0000)\n" " kill: (0000)\n" "Block 3\n" // then block - " live in: (0010)\n" + " live in: (0100)\n" " live out: (0000)\n" " kill: (0000)\n" "Block 4\n" // return block @@ -291,7 +291,7 @@ TEST_F(LivenessTest, Loop3) { // } // return 5; // Bitsets are made of: - // (constant0, constant4, constant5, phi) + // (constant0, constant5, constant4, phi) const char* expected = "Block 0\n" " live in: (0000)\n" @@ -310,7 +310,7 @@ TEST_F(LivenessTest, Loop3) { " live out: (0110)\n" " kill: (0000)\n" "Block 4\n" // return block - " live in: (0010)\n" + " live in: (0100)\n" " live out: (0000)\n" " kill: (0000)\n" "Block 5\n" // exit block @@ -386,7 +386,7 @@ TEST_F(LivenessTest, Loop5) { // Make sure we create a preheader of a loop when a header originally has two // incoming blocks and one back edge. // Bitsets are made of: - // (constant0, constant4, constant5, phi in block 8) + // (constant0, constant5, constant4, phi in block 8) const char* expected = "Block 0\n" " live in: (0000)\n" @@ -397,11 +397,11 @@ TEST_F(LivenessTest, Loop5) { " live out: (0110)\n" " kill: (0000)\n" "Block 2\n" - " live in: (0100)\n" + " live in: (0010)\n" " live out: (0000)\n" " kill: (0000)\n" "Block 3\n" - " live in: (0010)\n" + " live in: (0100)\n" " live out: (0000)\n" " kill: (0000)\n" "Block 4\n" // loop header -- cgit v1.2.3-59-g8ed1b