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

Side by Side Diff: src/ppc/lithium-codegen-ppc.cc

Issue 1162993006: Add support for Embedded Constant Pools for PPC and Arm (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 6 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/base/bits.h" 7 #include "src/base/bits.h"
8 #include "src/code-factory.h" 8 #include "src/code-factory.h"
9 #include "src/code-stubs.h" 9 #include "src/code-stubs.h"
10 #include "src/cpu-profiler.h" 10 #include "src/cpu-profiler.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
43 bool LCodeGen::GenerateCode() { 43 bool LCodeGen::GenerateCode() {
44 LPhase phase("Z_Code generation", chunk()); 44 LPhase phase("Z_Code generation", chunk());
45 DCHECK(is_unused()); 45 DCHECK(is_unused());
46 status_ = GENERATING; 46 status_ = GENERATING;
47 47
48 // Open a frame scope to indicate that there is a frame on the stack. The 48 // Open a frame scope to indicate that there is a frame on the stack. The
49 // NONE indicates that the scope shouldn't actually generate code to set up 49 // NONE indicates that the scope shouldn't actually generate code to set up
50 // the frame (that is done in GeneratePrologue). 50 // the frame (that is done in GeneratePrologue).
51 FrameScope frame_scope(masm_, StackFrame::NONE); 51 FrameScope frame_scope(masm_, StackFrame::NONE);
52 52
53 return GeneratePrologue() && GenerateBody() && GenerateDeferredCode() && 53 bool rc = GeneratePrologue() && GenerateBody() && GenerateDeferredCode() &&
54 GenerateJumpTable() && GenerateSafepointTable(); 54 GenerateJumpTable() && GenerateSafepointTable();
55 if (FLAG_enable_embedded_constant_pool && !rc) {
56 masm()->AbortConstantPoolBuilding();
57 }
58 return rc;
55 } 59 }
56 60
57 61
58 void LCodeGen::FinishCode(Handle<Code> code) { 62 void LCodeGen::FinishCode(Handle<Code> code) {
59 DCHECK(is_done()); 63 DCHECK(is_done());
60 code->set_stack_slots(GetStackSlotCount()); 64 code->set_stack_slots(GetStackSlotCount());
61 code->set_safepoint_table_offset(safepoints_.GetCodeOffset()); 65 code->set_safepoint_table_offset(safepoints_.GetCodeOffset());
62 PopulateDeoptimizationData(code); 66 PopulateDeoptimizationData(code);
63 } 67 }
64 68
(...skipping 6205 matching lines...) Expand 10 before | Expand all | Expand 10 after
6270 __ Push(scope_info); 6274 __ Push(scope_info);
6271 __ push(ToRegister(instr->function())); 6275 __ push(ToRegister(instr->function()));
6272 CallRuntime(Runtime::kPushBlockContext, 2, instr); 6276 CallRuntime(Runtime::kPushBlockContext, 2, instr);
6273 RecordSafepoint(Safepoint::kNoLazyDeopt); 6277 RecordSafepoint(Safepoint::kNoLazyDeopt);
6274 } 6278 }
6275 6279
6276 6280
6277 #undef __ 6281 #undef __
6278 } // namespace internal 6282 } // namespace internal
6279 } // namespace v8 6283 } // namespace v8
OLDNEW
« src/objects.h ('K') | « src/ppc/full-codegen-ppc.cc ('k') | src/ppc/macro-assembler-ppc.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698