OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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_FULL_CODEGEN_H_ | 5 #ifndef V8_FULL_CODEGEN_H_ |
6 #define V8_FULL_CODEGEN_H_ | 6 #define V8_FULL_CODEGEN_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 #elif V8_TARGET_ARCH_ARM | 108 #elif V8_TARGET_ARCH_ARM |
109 static const int kCodeSizeMultiplier = 149; | 109 static const int kCodeSizeMultiplier = 149; |
110 static const int kBootCodeSizeMultiplier = 110; | 110 static const int kBootCodeSizeMultiplier = 110; |
111 #elif V8_TARGET_ARCH_ARM64 | 111 #elif V8_TARGET_ARCH_ARM64 |
112 // TODO(all): Copied ARM value. Check this is sensible for ARM64. | 112 // TODO(all): Copied ARM value. Check this is sensible for ARM64. |
113 static const int kCodeSizeMultiplier = 149; | 113 static const int kCodeSizeMultiplier = 149; |
114 static const int kBootCodeSizeMultiplier = 110; | 114 static const int kBootCodeSizeMultiplier = 110; |
115 #elif V8_TARGET_ARCH_MIPS | 115 #elif V8_TARGET_ARCH_MIPS |
116 static const int kCodeSizeMultiplier = 149; | 116 static const int kCodeSizeMultiplier = 149; |
117 static const int kBootCodeSizeMultiplier = 120; | 117 static const int kBootCodeSizeMultiplier = 120; |
| 118 #elif V8_TARGET_ARCH_MIPS64 |
| 119 static const int kCodeSizeMultiplier = 149; |
| 120 static const int kBootCodeSizeMultiplier = 120; |
118 #else | 121 #else |
119 #error Unsupported target architecture. | 122 #error Unsupported target architecture. |
120 #endif | 123 #endif |
121 | 124 |
122 private: | 125 private: |
123 class Breakable; | 126 class Breakable; |
124 class Iteration; | 127 class Iteration; |
125 | 128 |
126 class TestContext; | 129 class TestContext; |
127 | 130 |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
313 | 316 |
314 // Helper function to split control flow and avoid a branch to the | 317 // Helper function to split control flow and avoid a branch to the |
315 // fall-through label if it is set up. | 318 // fall-through label if it is set up. |
316 #if V8_TARGET_ARCH_MIPS | 319 #if V8_TARGET_ARCH_MIPS |
317 void Split(Condition cc, | 320 void Split(Condition cc, |
318 Register lhs, | 321 Register lhs, |
319 const Operand& rhs, | 322 const Operand& rhs, |
320 Label* if_true, | 323 Label* if_true, |
321 Label* if_false, | 324 Label* if_false, |
322 Label* fall_through); | 325 Label* fall_through); |
| 326 #elif V8_TARGET_ARCH_MIPS64 |
| 327 void Split(Condition cc, |
| 328 Register lhs, |
| 329 const Operand& rhs, |
| 330 Label* if_true, |
| 331 Label* if_false, |
| 332 Label* fall_through); |
323 #else // All non-mips arch. | 333 #else // All non-mips arch. |
324 void Split(Condition cc, | 334 void Split(Condition cc, |
325 Label* if_true, | 335 Label* if_true, |
326 Label* if_false, | 336 Label* if_false, |
327 Label* fall_through); | 337 Label* fall_through); |
328 #endif // V8_TARGET_ARCH_MIPS | 338 #endif // V8_TARGET_ARCH_MIPS |
329 | 339 |
330 // Load the value of a known (PARAMETER, LOCAL, or CONTEXT) variable into | 340 // Load the value of a known (PARAMETER, LOCAL, or CONTEXT) variable into |
331 // a register. Emits a context chain walk if if necessary (so does | 341 // a register. Emits a context chain walk if if necessary (so does |
332 // SetVar) so avoid calling both on the same variable. | 342 // SetVar) so avoid calling both on the same variable. |
(...skipping 600 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
933 | 943 |
934 Address start_; | 944 Address start_; |
935 Address instruction_start_; | 945 Address instruction_start_; |
936 uint32_t length_; | 946 uint32_t length_; |
937 }; | 947 }; |
938 | 948 |
939 | 949 |
940 } } // namespace v8::internal | 950 } } // namespace v8::internal |
941 | 951 |
942 #endif // V8_FULL_CODEGEN_H_ | 952 #endif // V8_FULL_CODEGEN_H_ |
OLD | NEW |