OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_IA32_CODEGEN_IA32_H_ | 5 #ifndef V8_IA32_CODEGEN_IA32_H_ |
6 #define V8_IA32_CODEGEN_IA32_H_ | 6 #define V8_IA32_CODEGEN_IA32_H_ |
7 | 7 |
8 #include "src/ast/ast.h" | |
9 #include "src/macro-assembler.h" | 8 #include "src/macro-assembler.h" |
10 | 9 |
11 namespace v8 { | 10 namespace v8 { |
12 namespace internal { | 11 namespace internal { |
13 | 12 |
14 | 13 |
15 class StringCharLoadGenerator : public AllStatic { | 14 class StringCharLoadGenerator : public AllStatic { |
16 public: | 15 public: |
17 // Generates the code for handling different string types and loading the | 16 // Generates the code for handling different string types and loading the |
18 // indexed character into |result|. We expect |index| as untagged input and | 17 // indexed character into |result|. We expect |index| as untagged input and |
19 // |result| as untagged output. | 18 // |result| as untagged output. |
20 static void Generate(MacroAssembler* masm, | 19 static void Generate(MacroAssembler* masm, |
21 Factory* factory, | 20 Factory* factory, |
22 Register string, | 21 Register string, |
23 Register index, | 22 Register index, |
24 Register result, | 23 Register result, |
25 Label* call_runtime); | 24 Label* call_runtime); |
26 | 25 |
27 private: | 26 private: |
28 DISALLOW_COPY_AND_ASSIGN(StringCharLoadGenerator); | 27 DISALLOW_COPY_AND_ASSIGN(StringCharLoadGenerator); |
29 }; | 28 }; |
30 | 29 |
31 | 30 |
32 } // namespace internal | 31 } // namespace internal |
33 } // namespace v8 | 32 } // namespace v8 |
34 | 33 |
35 #endif // V8_IA32_CODEGEN_IA32_H_ | 34 #endif // V8_IA32_CODEGEN_IA32_H_ |
OLD | NEW |