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

Side by Side Diff: src/ia32/virtual-frame-ia32.cc

Issue 6670119: VM initialization refactoring. (Closed)
Patch Set: Created 9 years, 8 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 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 810 matching lines...) Expand 10 before | Expand all | Expand 10 after
821 __ SmiUntag(fresh_reg); 821 __ SmiUntag(fresh_reg);
822 __ jmp(&done); 822 __ jmp(&done);
823 823
824 __ bind(&not_smi); 824 __ bind(&not_smi);
825 if (!original.type_info().IsNumber()) { 825 if (!original.type_info().IsNumber()) {
826 __ cmp(FieldOperand(fresh_reg, HeapObject::kMapOffset), 826 __ cmp(FieldOperand(fresh_reg, HeapObject::kMapOffset),
827 FACTORY->heap_number_map()); 827 FACTORY->heap_number_map());
828 cgen()->unsafe_bailout_->Branch(not_equal); 828 cgen()->unsafe_bailout_->Branch(not_equal);
829 } 829 }
830 830
831 if (!Isolate::Current()->cpu_features()->IsSupported(SSE2)) { 831 if (!CpuFeatures::IsSupported(SSE2)) {
832 UNREACHABLE(); 832 UNREACHABLE();
833 } else { 833 } else {
834 CpuFeatures::Scope use_sse2(SSE2); 834 CpuFeatures::Scope use_sse2(SSE2);
835 __ movdbl(xmm0, FieldOperand(fresh_reg, HeapNumber::kValueOffset)); 835 __ movdbl(xmm0, FieldOperand(fresh_reg, HeapNumber::kValueOffset));
836 __ cvttsd2si(fresh_reg, Operand(xmm0)); 836 __ cvttsd2si(fresh_reg, Operand(xmm0));
837 __ cvtsi2sd(xmm1, Operand(fresh_reg)); 837 __ cvtsi2sd(xmm1, Operand(fresh_reg));
838 __ ucomisd(xmm0, xmm1); 838 __ ucomisd(xmm0, xmm1);
839 cgen()->unsafe_bailout_->Branch(not_equal); 839 cgen()->unsafe_bailout_->Branch(not_equal);
840 cgen()->unsafe_bailout_->Branch(parity_even); // NaN. 840 cgen()->unsafe_bailout_->Branch(parity_even); // NaN.
841 // Test for negative zero. 841 // Test for negative zero.
(...skipping 515 matching lines...) Expand 10 before | Expand all | Expand 10 after
1357 elements_.Add(element); 1357 elements_.Add(element);
1358 } 1358 }
1359 } 1359 }
1360 1360
1361 1361
1362 #undef __ 1362 #undef __
1363 1363
1364 } } // namespace v8::internal 1364 } } // namespace v8::internal
1365 1365
1366 #endif // V8_TARGET_ARCH_IA32 1366 #endif // V8_TARGET_ARCH_IA32
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698