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

Side by Side Diff: src/compiler/mips64/instruction-codes-mips64.h

Issue 2801683003: MIPS[64]: Support for some SIMD operations (8) (Closed)
Patch Set: 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 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 #ifndef V8_COMPILER_MIPS_INSTRUCTION_CODES_MIPS_H_ 5 #ifndef V8_COMPILER_MIPS_INSTRUCTION_CODES_MIPS_H_
6 #define V8_COMPILER_MIPS_INSTRUCTION_CODES_MIPS_H_ 6 #define V8_COMPILER_MIPS_INSTRUCTION_CODES_MIPS_H_
7 7
8 namespace v8 { 8 namespace v8 {
9 namespace internal { 9 namespace internal {
10 namespace compiler { 10 namespace compiler {
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
170 V(Mips64S128Zero) \ 170 V(Mips64S128Zero) \
171 V(Mips64I32x4Splat) \ 171 V(Mips64I32x4Splat) \
172 V(Mips64I32x4ExtractLane) \ 172 V(Mips64I32x4ExtractLane) \
173 V(Mips64I32x4ReplaceLane) \ 173 V(Mips64I32x4ReplaceLane) \
174 V(Mips64I32x4Add) \ 174 V(Mips64I32x4Add) \
175 V(Mips64I32x4Sub) \ 175 V(Mips64I32x4Sub) \
176 V(Mips64F32x4Splat) \ 176 V(Mips64F32x4Splat) \
177 V(Mips64F32x4ExtractLane) \ 177 V(Mips64F32x4ExtractLane) \
178 V(Mips64F32x4ReplaceLane) \ 178 V(Mips64F32x4ReplaceLane) \
179 V(Mips64F32x4SConvertI32x4) \ 179 V(Mips64F32x4SConvertI32x4) \
180 V(Mips64F32x4UConvertI32x4) 180 V(Mips64F32x4UConvertI32x4) \
181 V(Mips64S128And) \
182 V(Mips64S128Or) \
183 V(Mips64S128Xor) \
184 V(Mips64S128Not) \
185 V(Mips64S1x4AnyTrue) \
186 V(Mips64S1x4AllTrue) \
187 V(Mips64S1x8AnyTrue) \
188 V(Mips64S1x8AllTrue) \
189 V(Mips64S1x16AnyTrue) \
190 V(Mips64S1x16AllTrue) \
191 V(Mips64MsaLd) \
192 V(Mips64MsaSt)
181 193
182 // Addressing modes represent the "shape" of inputs to an instruction. 194 // Addressing modes represent the "shape" of inputs to an instruction.
183 // Many instructions support multiple addressing modes. Addressing modes 195 // Many instructions support multiple addressing modes. Addressing modes
184 // are encoded into the InstructionCode of the instruction and tell the 196 // are encoded into the InstructionCode of the instruction and tell the
185 // code generator after register allocation which assembler method to call. 197 // code generator after register allocation which assembler method to call.
186 // 198 //
187 // We use the following local notation for addressing modes: 199 // We use the following local notation for addressing modes:
188 // 200 //
189 // R = register 201 // R = register
190 // O = register or stack slot 202 // O = register or stack slot
191 // D = double register 203 // D = double register
192 // I = immediate (handle, external, int32) 204 // I = immediate (handle, external, int32)
193 // MRI = [register + immediate] 205 // MRI = [register + immediate]
194 // MRR = [register + register] 206 // MRR = [register + register]
195 // TODO(plind): Add the new r6 address modes. 207 // TODO(plind): Add the new r6 address modes.
196 #define TARGET_ADDRESSING_MODE_LIST(V) \ 208 #define TARGET_ADDRESSING_MODE_LIST(V) \
197 V(MRI) /* [%r0 + K] */ \ 209 V(MRI) /* [%r0 + K] */ \
198 V(MRR) /* [%r0 + %r1] */ 210 V(MRR) /* [%r0 + %r1] */
199 211
200 212
201 } // namespace compiler 213 } // namespace compiler
202 } // namespace internal 214 } // namespace internal
203 } // namespace v8 215 } // namespace v8
204 216
205 #endif // V8_COMPILER_MIPS_INSTRUCTION_CODES_MIPS_H_ 217 #endif // V8_COMPILER_MIPS_INSTRUCTION_CODES_MIPS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698