From b77f1319144a0e259f90d7967f4fddb67eaddbfc Mon Sep 17 00:00:00 2001 From: "whesse@chromium.org" Date: Wed, 11 May 2011 12:11:23 +0000 Subject: [PATCH] Don't emit code for HContext values with no uses. BUG= TEST= Review URL: http://codereview.chromium.org/6982023 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@7860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00 --- src/arm/lithium-arm.cc | 2 +- src/ia32/lithium-ia32.cc | 2 +- src/x64/lithium-x64.cc | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/arm/lithium-arm.cc b/src/arm/lithium-arm.cc index c3229b8..2f73038 100644 --- a/src/arm/lithium-arm.cc +++ b/src/arm/lithium-arm.cc @@ -1202,7 +1202,7 @@ LInstruction* LChunkBuilder::DoPushArgument(HPushArgument* instr) { LInstruction* LChunkBuilder::DoContext(HContext* instr) { - return DefineAsRegister(new LContext); + return instr->HasNoUses() ? NULL : DefineAsRegister(new LContext); } diff --git a/src/ia32/lithium-ia32.cc b/src/ia32/lithium-ia32.cc index 7233341..ac0d8d8 100644 --- a/src/ia32/lithium-ia32.cc +++ b/src/ia32/lithium-ia32.cc @@ -1214,7 +1214,7 @@ LInstruction* LChunkBuilder::DoPushArgument(HPushArgument* instr) { LInstruction* LChunkBuilder::DoContext(HContext* instr) { - return DefineAsRegister(new LContext); + return instr->HasNoUses() ? NULL : DefineAsRegister(new LContext); } diff --git a/src/x64/lithium-x64.cc b/src/x64/lithium-x64.cc index d373b08..3f4291f 100644 --- a/src/x64/lithium-x64.cc +++ b/src/x64/lithium-x64.cc @@ -1202,7 +1202,7 @@ LInstruction* LChunkBuilder::DoPushArgument(HPushArgument* instr) { LInstruction* LChunkBuilder::DoContext(HContext* instr) { - return DefineAsRegister(new LContext); + return instr->HasNoUses() ? NULL : DefineAsRegister(new LContext); } -- 2.7.4