Lines Matching refs:MMX

1 //===-- X86InstrMMX.td - Describe the MMX Instruction Set --*- tablegen -*-===//
9 // This file describes the X86 MMX instruction set, defining the instructions,
13 // All instructions that use MMX should be in this file, even if they also use
19 // MMX Multiclasses
33 // MMXI_binop_rm_int - Simple MMX binary operator based on intrinsic.
73 /// Unary MMX instructions requiring SSSE3.
87 /// Binary MMX instructions requiring SSSE3.
107 /// PALIGN MMX instructions (require SSSE3).
148 // MMX EMMS Instruction
157 // MMX Scalar Instructions
192 []>, Sched<[SchedWriteVecMoveLS.MMX.RM]>;
213 Sched<[SchedWriteVecMoveLS.MMX.MR]>;
215 let SchedRW = [SchedWriteVecMoveLS.MMX.RM] in {
222 let SchedRW = [SchedWriteVecMoveLS.MMX.MR] in
258 Sched<[SchedWriteVecMoveLSNT.MMX.MR]>;
262 SchedWriteVecALU.MMX>;
264 SchedWriteVecALU.MMX>;
266 SchedWriteVecALU.MMX>;
269 SchedWriteVecALU.MMX, 1>;
271 SchedWriteVecALU.MMX, 1>;
273 SchedWriteVecALU.MMX, 1>;
276 SchedWriteVecALU.MMX, 1>;
278 SchedWriteVecALU.MMX, 1>;
280 SchedWriteVecALU.MMX, 1>;
283 SchedWriteVecALU.MMX, 1>;
285 SchedWriteVecALU.MMX, 1>;
288 SchedWritePHAdd.MMX>;
290 SchedWritePHAdd.MMX>;
292 SchedWritePHAdd.MMX>;
296 SchedWriteVecALU.MMX>;
298 SchedWriteVecALU.MMX>;
300 SchedWriteVecALU.MMX>;
303 SchedWriteVecALU.MMX>;
306 SchedWriteVecALU.MMX>;
308 SchedWriteVecALU.MMX>;
311 SchedWriteVecALU.MMX>;
313 SchedWriteVecALU.MMX>;
316 SchedWritePHAdd.MMX>;
318 SchedWritePHAdd.MMX>;
320 SchedWritePHAdd.MMX>;
324 SchedWriteVecIMul.MMX, 1>;
327 SchedWriteVecIMul.MMX, 1>;
330 SchedWriteVecIMul.MMX, 1>;
333 SchedWriteVecIMul.MMX, 1>;
336 SchedWriteVecIMul.MMX, 1>;
340 SchedWriteVecIMul.MMX, 1>;
344 SchedWriteVecIMul.MMX>;
347 SchedWriteVecALU.MMX, 1>;
349 SchedWriteVecALU.MMX, 1>;
352 SchedWriteVecALU.MMX, 1>;
354 SchedWriteVecALU.MMX, 1>;
357 SchedWriteVecALU.MMX, 1>;
359 SchedWriteVecALU.MMX, 1>;
362 SchedWritePSADBW.MMX, 1>;
366 SchedWriteVecALU.MMX>;
368 SchedWriteVecALU.MMX>;
370 SchedWriteVecALU.MMX>;
373 SchedWriteShuffle.MMX>;
377 SchedWriteVecLogic.MMX, 1>;
379 SchedWriteVecLogic.MMX, 1>;
381 SchedWriteVecLogic.MMX, 1>;
383 SchedWriteVecLogic.MMX>;
388 SchedWriteVecShift.MMX,
389 SchedWriteVecShiftImm.MMX>;
392 SchedWriteVecShift.MMX,
393 SchedWriteVecShiftImm.MMX>;
396 SchedWriteVecShift.MMX,
397 SchedWriteVecShiftImm.MMX>;
401 SchedWriteVecShift.MMX,
402 SchedWriteVecShiftImm.MMX>;
405 SchedWriteVecShift.MMX,
406 SchedWriteVecShiftImm.MMX>;
409 SchedWriteVecShift.MMX,
410 SchedWriteVecShiftImm.MMX>;
414 SchedWriteVecShift.MMX,
415 SchedWriteVecShiftImm.MMX>;
418 SchedWriteVecShift.MMX,
419 SchedWriteVecShiftImm.MMX>;
423 SchedWriteVecALU.MMX>;
425 SchedWriteVecALU.MMX>;
427 SchedWriteVecALU.MMX>;
430 SchedWriteVecALU.MMX>;
432 SchedWriteVecALU.MMX>;
434 SchedWriteVecALU.MMX>;
439 SchedWriteShuffle.MMX>;
442 SchedWriteShuffle.MMX>;
445 SchedWriteShuffle.MMX>;
448 SchedWriteShuffle.MMX,
452 SchedWriteShuffle.MMX,
456 SchedWriteShuffle.MMX,
461 SchedWriteShuffle.MMX>;
463 SchedWriteShuffle.MMX>;
465 SchedWriteShuffle.MMX>;
469 SchedWriteVarShuffle.MMX>;
477 Sched<[SchedWriteShuffle.MMX]>;
484 Sched<[SchedWriteShuffle.MMX.Folded]>;
549 let SchedRW = [SchedWriteShuffle.MMX] in {