Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(346)

Side by Side Diff: src/compiler/arm/instruction-scheduler-arm.cc

Issue 2804883008: [WASM SIMD] Implement horizontal add for float and integer types. (Closed)
Patch Set: Fix MIPS. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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/instruction-scheduler.h" 5 #include "src/compiler/instruction-scheduler.h"
6 6
7 namespace v8 { 7 namespace v8 {
8 namespace internal { 8 namespace internal {
9 namespace compiler { 9 namespace compiler {
10 10
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
111 case kArmF32x4Splat: 111 case kArmF32x4Splat:
112 case kArmF32x4ExtractLane: 112 case kArmF32x4ExtractLane:
113 case kArmF32x4ReplaceLane: 113 case kArmF32x4ReplaceLane:
114 case kArmF32x4SConvertI32x4: 114 case kArmF32x4SConvertI32x4:
115 case kArmF32x4UConvertI32x4: 115 case kArmF32x4UConvertI32x4:
116 case kArmF32x4Abs: 116 case kArmF32x4Abs:
117 case kArmF32x4Neg: 117 case kArmF32x4Neg:
118 case kArmF32x4RecipApprox: 118 case kArmF32x4RecipApprox:
119 case kArmF32x4RecipSqrtApprox: 119 case kArmF32x4RecipSqrtApprox:
120 case kArmF32x4Add: 120 case kArmF32x4Add:
121 case kArmF32x4AddHoriz:
121 case kArmF32x4Sub: 122 case kArmF32x4Sub:
122 case kArmF32x4Mul: 123 case kArmF32x4Mul:
123 case kArmF32x4Min: 124 case kArmF32x4Min:
124 case kArmF32x4Max: 125 case kArmF32x4Max:
125 case kArmF32x4RecipRefine: 126 case kArmF32x4RecipRefine:
126 case kArmF32x4RecipSqrtRefine: 127 case kArmF32x4RecipSqrtRefine:
127 case kArmF32x4Eq: 128 case kArmF32x4Eq:
128 case kArmF32x4Ne: 129 case kArmF32x4Ne:
129 case kArmF32x4Lt: 130 case kArmF32x4Lt:
130 case kArmF32x4Le: 131 case kArmF32x4Le:
131 case kArmI32x4Splat: 132 case kArmI32x4Splat:
132 case kArmI32x4ExtractLane: 133 case kArmI32x4ExtractLane:
133 case kArmI32x4ReplaceLane: 134 case kArmI32x4ReplaceLane:
134 case kArmI32x4SConvertF32x4: 135 case kArmI32x4SConvertF32x4:
135 case kArmI32x4SConvertI16x8Low: 136 case kArmI32x4SConvertI16x8Low:
136 case kArmI32x4SConvertI16x8High: 137 case kArmI32x4SConvertI16x8High:
137 case kArmI32x4Neg: 138 case kArmI32x4Neg:
138 case kArmI32x4Shl: 139 case kArmI32x4Shl:
139 case kArmI32x4ShrS: 140 case kArmI32x4ShrS:
140 case kArmI32x4Add: 141 case kArmI32x4Add:
142 case kArmI32x4AddHoriz:
141 case kArmI32x4Sub: 143 case kArmI32x4Sub:
142 case kArmI32x4Mul: 144 case kArmI32x4Mul:
143 case kArmI32x4MinS: 145 case kArmI32x4MinS:
144 case kArmI32x4MaxS: 146 case kArmI32x4MaxS:
145 case kArmI32x4Eq: 147 case kArmI32x4Eq:
146 case kArmI32x4Ne: 148 case kArmI32x4Ne:
147 case kArmI32x4LtS: 149 case kArmI32x4LtS:
148 case kArmI32x4LeS: 150 case kArmI32x4LeS:
149 case kArmI32x4UConvertF32x4: 151 case kArmI32x4UConvertF32x4:
150 case kArmI32x4UConvertI16x8Low: 152 case kArmI32x4UConvertI16x8Low:
151 case kArmI32x4UConvertI16x8High: 153 case kArmI32x4UConvertI16x8High:
152 case kArmI32x4ShrU: 154 case kArmI32x4ShrU:
153 case kArmI32x4MinU: 155 case kArmI32x4MinU:
154 case kArmI32x4MaxU: 156 case kArmI32x4MaxU:
155 case kArmI32x4LtU: 157 case kArmI32x4LtU:
156 case kArmI32x4LeU: 158 case kArmI32x4LeU:
157 case kArmI16x8Splat: 159 case kArmI16x8Splat:
158 case kArmI16x8ExtractLane: 160 case kArmI16x8ExtractLane:
159 case kArmI16x8ReplaceLane: 161 case kArmI16x8ReplaceLane:
160 case kArmI16x8SConvertI8x16Low: 162 case kArmI16x8SConvertI8x16Low:
161 case kArmI16x8SConvertI8x16High: 163 case kArmI16x8SConvertI8x16High:
162 case kArmI16x8Neg: 164 case kArmI16x8Neg:
163 case kArmI16x8Shl: 165 case kArmI16x8Shl:
164 case kArmI16x8ShrS: 166 case kArmI16x8ShrS:
165 case kArmI16x8SConvertI32x4: 167 case kArmI16x8SConvertI32x4:
166 case kArmI16x8Add: 168 case kArmI16x8Add:
167 case kArmI16x8AddSaturateS: 169 case kArmI16x8AddSaturateS:
170 case kArmI16x8AddHoriz:
168 case kArmI16x8Sub: 171 case kArmI16x8Sub:
169 case kArmI16x8SubSaturateS: 172 case kArmI16x8SubSaturateS:
170 case kArmI16x8Mul: 173 case kArmI16x8Mul:
171 case kArmI16x8MinS: 174 case kArmI16x8MinS:
172 case kArmI16x8MaxS: 175 case kArmI16x8MaxS:
173 case kArmI16x8Eq: 176 case kArmI16x8Eq:
174 case kArmI16x8Ne: 177 case kArmI16x8Ne:
175 case kArmI16x8LtS: 178 case kArmI16x8LtS:
176 case kArmI16x8LeS: 179 case kArmI16x8LeS:
177 case kArmI16x8UConvertI8x16Low: 180 case kArmI16x8UConvertI8x16Low:
178 case kArmI16x8UConvertI8x16High: 181 case kArmI16x8UConvertI8x16High:
179 case kArmI16x8ShrU: 182 case kArmI16x8ShrU:
180 case kArmI16x8UConvertI32x4: 183 case kArmI16x8UConvertI32x4:
181 case kArmI16x8AddSaturateU: 184 case kArmI16x8AddSaturateU:
182 case kArmI16x8SubSaturateU: 185 case kArmI16x8SubSaturateU:
183 case kArmI16x8MinU: 186 case kArmI16x8MinU:
184 case kArmI16x8MaxU: 187 case kArmI16x8MaxU:
185 case kArmI16x8LtU: 188 case kArmI16x8LtU:
186 case kArmI16x8LeU: 189 case kArmI16x8LeU:
187 case kArmI8x16Splat: 190 case kArmI8x16Splat:
188 case kArmI8x16ExtractLane: 191 case kArmI8x16ExtractLane:
189 case kArmI8x16ReplaceLane: 192 case kArmI8x16ReplaceLane:
190 case kArmI8x16Neg: 193 case kArmI8x16Neg:
191 case kArmI8x16Shl: 194 case kArmI8x16Shl:
192 case kArmI8x16ShrS: 195 case kArmI8x16ShrS:
193 case kArmI8x16SConvertI16x8: 196 case kArmI8x16SConvertI16x8:
194 case kArmI8x16Add: 197 case kArmI8x16Add:
195 case kArmI8x16AddSaturateS: 198 case kArmI8x16AddSaturateS:
199 case kArmI8x16AddHoriz:
196 case kArmI8x16Sub: 200 case kArmI8x16Sub:
197 case kArmI8x16SubSaturateS: 201 case kArmI8x16SubSaturateS:
198 case kArmI8x16Mul: 202 case kArmI8x16Mul:
199 case kArmI8x16MinS: 203 case kArmI8x16MinS:
200 case kArmI8x16MaxS: 204 case kArmI8x16MaxS:
201 case kArmI8x16Eq: 205 case kArmI8x16Eq:
202 case kArmI8x16Ne: 206 case kArmI8x16Ne:
203 case kArmI8x16LtS: 207 case kArmI8x16LtS:
204 case kArmI8x16LeS: 208 case kArmI8x16LeS:
205 case kArmI8x16UConvertI16x8: 209 case kArmI8x16UConvertI16x8:
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 288
285 289
286 int InstructionScheduler::GetInstructionLatency(const Instruction* instr) { 290 int InstructionScheduler::GetInstructionLatency(const Instruction* instr) {
287 // TODO(all): Add instruction cost modeling. 291 // TODO(all): Add instruction cost modeling.
288 return 1; 292 return 1;
289 } 293 }
290 294
291 } // namespace compiler 295 } // namespace compiler
292 } // namespace internal 296 } // namespace internal
293 } // namespace v8 297 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698