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

Unified Diff: src/x64/macro-assembler-x64.h

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, 5 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 side-by-side diff with in-line comments
Download patch
Index: src/x64/macro-assembler-x64.h
diff --git a/src/x64/macro-assembler-x64.h b/src/x64/macro-assembler-x64.h
index 9d5d2a31c5ceee61652cd923ca83e8a13d1388ca..25bc632f9d8f150a456ed60e9c3d113ee0d7f1d8 100644
--- a/src/x64/macro-assembler-x64.h
+++ b/src/x64/macro-assembler-x64.h
@@ -648,9 +648,16 @@ class MacroAssembler: public Assembler {
void SmiOrConstant(Register dst, Register src1, Smi* constant);
void SmiXorConstant(Register dst, Register src1, Smi* constant);
+#if !V8_USE_31_BITS_SMI_VALUE
void SmiShiftLeftConstant(Register dst,
Register src,
int shift_value);
+#else
+ void SmiShiftLeftConstant(Register dst,
+ Register src,
+ int shift_value,
+ Label* on_not_smi_result);
+#endif
void SmiShiftLogicalRightConstant(Register dst,
Register src,
int shift_value,
@@ -662,9 +669,16 @@ class MacroAssembler: public Assembler {
// Shifts a smi value to the left, and returns the result if that is a smi.
// Uses and clobbers rcx, so dst may not be rcx.
+#if !V8_USE_31_BITS_SMI_VALUE
void SmiShiftLeft(Register dst,
Register src1,
Register src2);
+#else
+ void SmiShiftLeft(Register dst,
+ Register src1,
+ Register src2,
+ Label* on_not_smi_result);
+#endif
// Shifts a smi value to the right, shifting in zero bits at the top, and
// returns the unsigned intepretation of the result if that is a smi.
// Uses and clobbers rcx, so dst may not be rcx.

Powered by Google App Engine
This is Rietveld 408576698