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

Side by Side Diff: src/x64/deoptimizer-x64.cc

Issue 21014003: Optionally use 31-bits SMI value for 64-bit system (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 4 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 call_address >= prev_call_address + patch_size()); 76 call_address >= prev_call_address + patch_size());
77 ASSERT(call_address + patch_size() <= code->instruction_end()); 77 ASSERT(call_address + patch_size() <= code->instruction_end());
78 #ifdef DEBUG 78 #ifdef DEBUG
79 prev_call_address = call_address; 79 prev_call_address = call_address;
80 #endif 80 #endif
81 } 81 }
82 } 82 }
83 83
84 84
85 static const byte kJnsInstruction = 0x79; 85 static const byte kJnsInstruction = 0x79;
86 #if !V8_USE_31_BITS_SMI_VALUE
86 static const byte kJnsOffset = 0x1d; 87 static const byte kJnsOffset = 0x1d;
88 #else
89 static const byte kJnsOffset = 0x19;
90 #endif
87 static const byte kCallInstruction = 0xe8; 91 static const byte kCallInstruction = 0xe8;
88 static const byte kNopByteOne = 0x66; 92 static const byte kNopByteOne = 0x66;
89 static const byte kNopByteTwo = 0x90; 93 static const byte kNopByteTwo = 0x90;
90 94
91 // The back edge bookkeeping code matches the pattern: 95 // The back edge bookkeeping code matches the pattern:
92 // 96 //
93 // add <profiling_counter>, <-delta> 97 // add <profiling_counter>, <-delta>
94 // jns ok 98 // jns ok
95 // call <stack guard> 99 // call <stack guard>
96 // ok: 100 // ok:
(...skipping 490 matching lines...) Expand 10 before | Expand all | Expand 10 after
587 SetFrameSlot(offset, value); 591 SetFrameSlot(offset, value);
588 } 592 }
589 593
590 594
591 #undef __ 595 #undef __
592 596
593 597
594 } } // namespace v8::internal 598 } } // namespace v8::internal
595 599
596 #endif // V8_TARGET_ARCH_X64 600 #endif // V8_TARGET_ARCH_X64
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698