RegExp: Remove unnecessary function from ARM specific code and convert condition...
authorlrn@chromium.org <lrn@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 2 Sep 2009 07:34:51 +0000 (07:34 +0000)
committerlrn@chromium.org <lrn@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 2 Sep 2009 07:34:51 +0000 (07:34 +0000)
Review URL: http://codereview.chromium.org/178034

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2807 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/arm/regexp-macro-assembler-arm.cc
src/arm/regexp-macro-assembler-arm.h
src/jsregexp.cc

index 63f47f6..252d783 100644 (file)
@@ -132,15 +132,6 @@ int RegExpMacroAssemblerARM::stack_limit_slack()  {
 }
 
 
-bool RegExpMacroAssemblerARM::CanReadUnaligned() {
-#if V8_TARGET_CAN_READ_UNALIGNED
-  return true;
-#else
-  return false;
-#endif
-}
-
-
 void RegExpMacroAssemblerARM::AdvanceCurrentPosition(int by) {
   if (by != 0) {
     Label inside_string;
index 2d0bd44..0711ac1 100644 (file)
@@ -45,7 +45,6 @@ class RegExpMacroAssemblerARM: public NativeRegExpMacroAssembler {
   RegExpMacroAssemblerARM(Mode mode, int registers_to_save);
   virtual ~RegExpMacroAssemblerARM();
   virtual int stack_limit_slack();
-  virtual bool CanReadUnaligned();
   virtual void AdvanceCurrentPosition(int by);
   virtual void AdvanceRegister(int reg, int by);
   virtual void Backtrack();
index 40df777..e518662 100644 (file)
@@ -1723,8 +1723,8 @@ bool RegExpNode::EmitQuickCheck(RegExpCompiler* compiler,
   GetQuickCheckDetails(details, compiler, 0, trace->at_start() == Trace::FALSE);
   if (details->cannot_match()) return false;
   if (!details->Rationalize(compiler->ascii())) return false;
-  if (details->characters() > 1 &&
-      !compiler->macro_assembler()->CanReadUnaligned()) return false;
+  ASSERT(details->characters() == 1 ||
+         compiler->macro_assembler()->CanReadUnaligned());
   uint32_t mask = details->mask();
   uint32_t value = details->value();