OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 145 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
156 | 156 |
157 // Emit frame translation commands for an environment. | 157 // Emit frame translation commands for an environment. |
158 void WriteTranslation(LEnvironment* environment, Translation* translation); | 158 void WriteTranslation(LEnvironment* environment, Translation* translation); |
159 | 159 |
160 // Declare methods that deal with the individual node types. | 160 // Declare methods that deal with the individual node types. |
161 #define DECLARE_DO(type) void Do##type(L##type* node); | 161 #define DECLARE_DO(type) void Do##type(L##type* node); |
162 LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) | 162 LITHIUM_CONCRETE_INSTRUCTION_LIST(DECLARE_DO) |
163 #undef DECLARE_DO | 163 #undef DECLARE_DO |
164 | 164 |
165 private: | 165 private: |
166 StrictMode strict_mode_flag() const { | 166 StrictMode strict_mode() const { return info()->strict_mode(); } |
167 return info()->is_sloppy_mode() ? kSloppyMode : kStrictMode; | |
168 } | |
169 | 167 |
170 Scope* scope() const { return scope_; } | 168 Scope* scope() const { return scope_; } |
171 | 169 |
172 Register scratch0() { return kLithiumScratchReg; } | 170 Register scratch0() { return kLithiumScratchReg; } |
173 Register scratch1() { return kLithiumScratchReg2; } | 171 Register scratch1() { return kLithiumScratchReg2; } |
174 DoubleRegister double_scratch0() { return kLithiumScratchDouble; } | 172 DoubleRegister double_scratch0() { return kLithiumScratchDouble; } |
175 | 173 |
176 LInstruction* GetNextInstruction(); | 174 LInstruction* GetNextInstruction(); |
177 | 175 |
178 void EmitClassOfTest(Label* if_true, | 176 void EmitClassOfTest(Label* if_true, |
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
499 LCodeGen* codegen_; | 497 LCodeGen* codegen_; |
500 Label entry_; | 498 Label entry_; |
501 Label exit_; | 499 Label exit_; |
502 Label* external_exit_; | 500 Label* external_exit_; |
503 int instruction_index_; | 501 int instruction_index_; |
504 }; | 502 }; |
505 | 503 |
506 } } // namespace v8::internal | 504 } } // namespace v8::internal |
507 | 505 |
508 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ | 506 #endif // V8_MIPS_LITHIUM_CODEGEN_MIPS_H_ |
OLD | NEW |