Assign less environments
R=danno@chromium.org Review URL: https://chromiumcodereview.appspot.com/16556002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
16199c63d8
commit
1b4cb2aac4
@ -2354,10 +2354,11 @@ LInstruction* LChunkBuilder::DoStoreNamedField(HStoreNamedField* instr) {
|
||||
LOperand* temp = needs_write_barrier_for_map ? TempRegister() : NULL;
|
||||
|
||||
LStoreNamedField* result = new(zone()) LStoreNamedField(obj, val, temp);
|
||||
if ((FLAG_track_fields && instr->field_representation().IsSmi()) ||
|
||||
(FLAG_track_heap_object_fields &&
|
||||
instr->field_representation().IsHeapObject())) {
|
||||
return AssignEnvironment(result);
|
||||
if (FLAG_track_heap_object_fields &&
|
||||
instr->field_representation().IsHeapObject()) {
|
||||
if (!instr->value()->type().IsHeapObject()) {
|
||||
return AssignEnvironment(result);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
@ -2478,10 +2478,11 @@ LInstruction* LChunkBuilder::DoStoreNamedField(HStoreNamedField* instr) {
|
||||
|
||||
LStoreNamedField* result =
|
||||
new(zone()) LStoreNamedField(obj, val, temp, temp_map);
|
||||
if ((FLAG_track_fields && instr->field_representation().IsSmi()) ||
|
||||
(FLAG_track_heap_object_fields &&
|
||||
instr->field_representation().IsHeapObject())) {
|
||||
return AssignEnvironment(result);
|
||||
if (FLAG_track_heap_object_fields &&
|
||||
instr->field_representation().IsHeapObject()) {
|
||||
if (!instr->value()->type().IsHeapObject()) {
|
||||
return AssignEnvironment(result);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
@ -2294,10 +2294,11 @@ LInstruction* LChunkBuilder::DoStoreNamedField(HStoreNamedField* instr) {
|
||||
needs_write_barrier_for_map) ? TempRegister() : NULL;
|
||||
|
||||
LStoreNamedField* result = new(zone()) LStoreNamedField(obj, val, temp);
|
||||
if ((FLAG_track_fields && instr->field_representation().IsSmi()) ||
|
||||
(FLAG_track_heap_object_fields &&
|
||||
instr->field_representation().IsHeapObject())) {
|
||||
return AssignEnvironment(result);
|
||||
if (FLAG_track_heap_object_fields &&
|
||||
instr->field_representation().IsHeapObject()) {
|
||||
if (!instr->value()->type().IsHeapObject()) {
|
||||
return AssignEnvironment(result);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user