Author: [email protected]
Date: Tue Jan 13 01:23:26 2009
New Revision: 1060

Modified:
    branches/bleeding_edge/src/regexp-macro-assembler-ia32.cc
    branches/bleeding_edge/src/regexp-macro-assembler-ia32.h
    branches/bleeding_edge/test/cctest/test-regexp.cc

Log:
Unsigned number can't be negated in the VisualStudio compiler.
Fixed a few earlier review comments that had slipped through.


Modified: branches/bleeding_edge/src/regexp-macro-assembler-ia32.cc
==============================================================================
--- branches/bleeding_edge/src/regexp-macro-assembler-ia32.cc   (original)
+++ branches/bleeding_edge/src/regexp-macro-assembler-ia32.cc   Tue Jan 13  
01:23:26 2009
@@ -618,8 +618,9 @@
    __ sub(ecx, Operand::StaticVariable(stack_guard_limit));
    // Handle it if the stack pointer is already below the stack limit.
    __ j(below_equal, &stack_limit_hit, not_taken);
-  // Check if there is room for num_registers + ebp above the stack limit.
-  __ cmp(ecx, (num_registers_ + 1) * kPointerSize);
+  // Check if there is room for the variable number of registers above
+  // the stack limit.
+  __ cmp(ecx, num_registers_ * kPointerSize);
    __ j(above_equal, &stack_ok, taken);
    // Exit with exception.
    __ mov(eax, EXCEPTION);

Modified: branches/bleeding_edge/src/regexp-macro-assembler-ia32.h
==============================================================================
--- branches/bleeding_edge/src/regexp-macro-assembler-ia32.h    (original)
+++ branches/bleeding_edge/src/regexp-macro-assembler-ia32.h    Tue Jan 13  
01:23:26 2009
@@ -178,7 +178,7 @@
    inline Register backtrack_stackpointer() { return ecx; }

    // Byte size of chars in the string to match (decided by the Mode  
argument)
-  inline size_t char_size() { return static_cast<size_t>(mode_); }
+  inline int char_size() { return static_cast<int>(mode_); }

    // Equivalent to a conditional branch to the label, unless the label
    // is NULL, in which case it is a conditional Backtrack.
@@ -225,7 +225,7 @@
    // constants.
    ByteArrayProvider constants_;

-  // Which mode to generate code for (ASCII or UTF16).
+  // Which mode to generate code for (ASCII or UC16).
    Mode mode_;

    // One greater than maximal register index actually used.

Modified: branches/bleeding_edge/test/cctest/test-regexp.cc
==============================================================================
--- branches/bleeding_edge/test/cctest/test-regexp.cc   (original)
+++ branches/bleeding_edge/test/cctest/test-regexp.cc   Tue Jan 13 01:23:26  
2009
@@ -1055,8 +1055,6 @@
  }


-
-
  TEST(MacroAssemblerIA32BackRefNoCase) {
    v8::V8::Initialize();
    ContextInitializer initializer;

--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to