OLD | NEW |
1 // Copyright 2006-2009 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2009 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 3510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3521 static const int kSourceIndex = kTagIndex + 1; | 3521 static const int kSourceIndex = kTagIndex + 1; |
3522 static const int kFlagsIndex = kSourceIndex + 1; | 3522 static const int kFlagsIndex = kSourceIndex + 1; |
3523 static const int kDataIndex = kFlagsIndex + 1; | 3523 static const int kDataIndex = kFlagsIndex + 1; |
3524 // The data fields are used in different ways depending on the | 3524 // The data fields are used in different ways depending on the |
3525 // value of the tag. | 3525 // value of the tag. |
3526 // Atom regexps (literal strings). | 3526 // Atom regexps (literal strings). |
3527 static const int kAtomPatternIndex = kDataIndex; | 3527 static const int kAtomPatternIndex = kDataIndex; |
3528 | 3528 |
3529 static const int kAtomDataSize = kAtomPatternIndex + 1; | 3529 static const int kAtomDataSize = kAtomPatternIndex + 1; |
3530 | 3530 |
3531 // Irregexp compiled code or bytecode for ASCII. | 3531 // Irregexp compiled code or bytecode for ASCII. If compilation |
| 3532 // fails, this fields hold an exception object that should be |
| 3533 // thrown if the regexp is used again. |
3532 static const int kIrregexpASCIICodeIndex = kDataIndex; | 3534 static const int kIrregexpASCIICodeIndex = kDataIndex; |
3533 // Irregexp compiled code or bytecode for UC16. | 3535 // Irregexp compiled code or bytecode for UC16. If compilation |
| 3536 // fails, this fields hold an exception object that should be |
| 3537 // thrown if the regexp is used again. |
3534 static const int kIrregexpUC16CodeIndex = kDataIndex + 1; | 3538 static const int kIrregexpUC16CodeIndex = kDataIndex + 1; |
3535 // Maximal number of registers used by either ASCII or UC16. | 3539 // Maximal number of registers used by either ASCII or UC16. |
3536 // Only used to check that there is enough stack space | 3540 // Only used to check that there is enough stack space |
3537 static const int kIrregexpMaxRegisterCountIndex = kDataIndex + 2; | 3541 static const int kIrregexpMaxRegisterCountIndex = kDataIndex + 2; |
3538 // Number of captures in the compiled regexp. | 3542 // Number of captures in the compiled regexp. |
3539 static const int kIrregexpCaptureCountIndex = kDataIndex + 3; | 3543 static const int kIrregexpCaptureCountIndex = kDataIndex + 3; |
3540 | 3544 |
3541 static const int kIrregexpDataSize = kIrregexpCaptureCountIndex + 1; | 3545 static const int kIrregexpDataSize = kIrregexpCaptureCountIndex + 1; |
3542 }; | 3546 }; |
3543 | 3547 |
(...skipping 1309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4853 } else { | 4857 } else { |
4854 value &= ~(1 << bit_position); | 4858 value &= ~(1 << bit_position); |
4855 } | 4859 } |
4856 return value; | 4860 return value; |
4857 } | 4861 } |
4858 }; | 4862 }; |
4859 | 4863 |
4860 } } // namespace v8::internal | 4864 } } // namespace v8::internal |
4861 | 4865 |
4862 #endif // V8_OBJECTS_H_ | 4866 #endif // V8_OBJECTS_H_ |
OLD | NEW |