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 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
116 case TOS_REG: return "TOS_REG"; | 116 case TOS_REG: return "TOS_REG"; |
117 } | 117 } |
118 UNREACHABLE(); | 118 UNREACHABLE(); |
119 return NULL; | 119 return NULL; |
120 } | 120 } |
121 | 121 |
122 Zone* zone() const { return zone_; } | 122 Zone* zone() const { return zone_; } |
123 | 123 |
124 static const int kMaxBackEdgeWeight = 127; | 124 static const int kMaxBackEdgeWeight = 127; |
125 | 125 |
| 126 // Platform-specific code size multiplier. |
126 #if V8_TARGET_ARCH_IA32 | 127 #if V8_TARGET_ARCH_IA32 |
127 static const int kBackEdgeDistanceUnit = 100; | 128 static const int kCodeSizeMultiplier = 100; |
128 #elif V8_TARGET_ARCH_X64 | 129 #elif V8_TARGET_ARCH_X64 |
129 static const int kBackEdgeDistanceUnit = 162; | 130 static const int kCodeSizeMultiplier = 162; |
130 #elif V8_TARGET_ARCH_ARM | 131 #elif V8_TARGET_ARCH_ARM |
131 static const int kBackEdgeDistanceUnit = 142; | 132 static const int kCodeSizeMultiplier = 142; |
132 #elif V8_TARGET_ARCH_MIPS | 133 #elif V8_TARGET_ARCH_MIPS |
133 static const int kBackEdgeDistanceUnit = 142; | 134 static const int kCodeSizeMultiplier = 142; |
134 #else | 135 #else |
135 #error Unsupported target architecture. | 136 #error Unsupported target architecture. |
136 #endif | 137 #endif |
137 | 138 |
138 static const int kBackEdgeEntrySize = 2 * kIntSize + kOneByteSize; | 139 static const int kBackEdgeEntrySize = 2 * kIntSize + kOneByteSize; |
139 | 140 |
140 private: | 141 private: |
141 class Breakable; | 142 class Breakable; |
142 class Iteration; | 143 class Iteration; |
143 | 144 |
(...skipping 733 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
877 } | 878 } |
878 | 879 |
879 private: | 880 private: |
880 Zone* zone_; | 881 Zone* zone_; |
881 }; | 882 }; |
882 | 883 |
883 | 884 |
884 } } // namespace v8::internal | 885 } } // namespace v8::internal |
885 | 886 |
886 #endif // V8_FULL_CODEGEN_H_ | 887 #endif // V8_FULL_CODEGEN_H_ |
OLD | NEW |