OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #include "src/compiler/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
6 | 6 |
7 #include "src/compiler/code-generator-impl.h" | 7 #include "src/compiler/code-generator-impl.h" |
8 #include "src/compiler/gap-resolver.h" | 8 #include "src/compiler/gap-resolver.h" |
9 #include "src/compiler/node-matchers.h" | 9 #include "src/compiler/node-matchers.h" |
10 #include "src/compiler/osr.h" | 10 #include "src/compiler/osr.h" |
(...skipping 1124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1135 break; | 1135 break; |
1136 case kCheckedLoadInt16: | 1136 case kCheckedLoadInt16: |
1137 ASSEMBLE_CHECKED_LOAD_INTEGER(lha, lhax); | 1137 ASSEMBLE_CHECKED_LOAD_INTEGER(lha, lhax); |
1138 break; | 1138 break; |
1139 case kCheckedLoadUint16: | 1139 case kCheckedLoadUint16: |
1140 ASSEMBLE_CHECKED_LOAD_INTEGER(lhz, lhzx); | 1140 ASSEMBLE_CHECKED_LOAD_INTEGER(lhz, lhzx); |
1141 break; | 1141 break; |
1142 case kCheckedLoadWord32: | 1142 case kCheckedLoadWord32: |
1143 ASSEMBLE_CHECKED_LOAD_INTEGER(lwa, lwax); | 1143 ASSEMBLE_CHECKED_LOAD_INTEGER(lwa, lwax); |
1144 break; | 1144 break; |
| 1145 case kCheckedLoadWord64: |
| 1146 #if V8_TARGET_ARCH_PPC64 |
| 1147 ASSEMBLE_CHECKED_LOAD_INTEGER(ld, ldx); |
| 1148 #else |
| 1149 UNREACHABLE(); |
| 1150 #endif |
| 1151 break; |
1145 case kCheckedLoadFloat32: | 1152 case kCheckedLoadFloat32: |
1146 ASSEMBLE_CHECKED_LOAD_FLOAT(lfs, lfsx, 32); | 1153 ASSEMBLE_CHECKED_LOAD_FLOAT(lfs, lfsx, 32); |
1147 break; | 1154 break; |
1148 case kCheckedLoadFloat64: | 1155 case kCheckedLoadFloat64: |
1149 ASSEMBLE_CHECKED_LOAD_FLOAT(lfd, lfdx, 64); | 1156 ASSEMBLE_CHECKED_LOAD_FLOAT(lfd, lfdx, 64); |
1150 break; | 1157 break; |
1151 case kCheckedStoreWord8: | 1158 case kCheckedStoreWord8: |
1152 ASSEMBLE_CHECKED_STORE_INTEGER(stb, stbx); | 1159 ASSEMBLE_CHECKED_STORE_INTEGER(stb, stbx); |
1153 break; | 1160 break; |
1154 case kCheckedStoreWord16: | 1161 case kCheckedStoreWord16: |
1155 ASSEMBLE_CHECKED_STORE_INTEGER(sth, sthx); | 1162 ASSEMBLE_CHECKED_STORE_INTEGER(sth, sthx); |
1156 break; | 1163 break; |
1157 case kCheckedStoreWord32: | 1164 case kCheckedStoreWord32: |
1158 ASSEMBLE_CHECKED_STORE_INTEGER(stw, stwx); | 1165 ASSEMBLE_CHECKED_STORE_INTEGER(stw, stwx); |
1159 break; | 1166 break; |
| 1167 case kCheckedStoreWord64: |
| 1168 #if V8_TARGET_ARCH_PPC64 |
| 1169 ASSEMBLE_CHECKED_STORE_INTEGER(std, stdx); |
| 1170 #else |
| 1171 UNREACHABLE(); |
| 1172 #endif |
| 1173 break; |
1160 case kCheckedStoreFloat32: | 1174 case kCheckedStoreFloat32: |
1161 ASSEMBLE_CHECKED_STORE_FLOAT32(); | 1175 ASSEMBLE_CHECKED_STORE_FLOAT32(); |
1162 break; | 1176 break; |
1163 case kCheckedStoreFloat64: | 1177 case kCheckedStoreFloat64: |
1164 ASSEMBLE_CHECKED_STORE_DOUBLE(); | 1178 ASSEMBLE_CHECKED_STORE_DOUBLE(); |
1165 break; | 1179 break; |
1166 default: | 1180 default: |
1167 UNREACHABLE(); | 1181 UNREACHABLE(); |
1168 break; | 1182 break; |
1169 } | 1183 } |
(...skipping 442 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1612 padding_size -= v8::internal::Assembler::kInstrSize; | 1626 padding_size -= v8::internal::Assembler::kInstrSize; |
1613 } | 1627 } |
1614 } | 1628 } |
1615 } | 1629 } |
1616 | 1630 |
1617 #undef __ | 1631 #undef __ |
1618 | 1632 |
1619 } // namespace compiler | 1633 } // namespace compiler |
1620 } // namespace internal | 1634 } // namespace internal |
1621 } // namespace v8 | 1635 } // namespace v8 |
OLD | NEW |