Ignore:
Timestamp:
Oct 19, 2012, 4:23:34 PM (13 years ago)
Author:
[email protected]
Message:

Lexer should create 8 bit Identifiers for RegularExpressions and ASCII identifiers
https://bugs.webkit.org/show_bug.cgi?id=99855

Reviewed by Filip Pizlo.

Added makeIdentifier helpers that will always make an 8 bit Identifier or make an
Identifier that is the same size as the template parameter. Used the first in the fast
path when looking for a JS identifier and the second when scanning regular expressions.

  • parser/Lexer.cpp:

(JSC::::scanRegExp):

  • parser/Lexer.h:

(Lexer):
(JSC::::makeIdentifierSameType):
(JSC::::makeLCharIdentifier):
(JSC::::lexExpectIdentifier):

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/parser/Lexer.cpp

    r128542 r131956  
    16181618    }
    16191619
    1620     pattern = makeIdentifier(m_buffer16.data(), m_buffer16.size());
     1620    pattern = makeIdentifierSameType(m_buffer16.data(), m_buffer16.size());
    16211621    m_buffer16.resize(0);
    16221622
     
    16261626    }
    16271627
    1628     flags = makeIdentifier(m_buffer16.data(), m_buffer16.size());
     1628    flags = makeIdentifierSameType(m_buffer16.data(), m_buffer16.size());
    16291629    m_buffer16.resize(0);
    16301630
Note: See TracChangeset for help on using the changeset viewer.