llvm/utils/TableGen
Bill Wendling eebc8a1bc5 Add support for the v1i64 type. This makes better code for this:
#include <mmintrin.h>

extern __m64 C;

void baz(__v2si *A, __v2si *B)
{
  *A = C;
  _mm_empty();
}

We get this:

_baz:
        call "L1$pb"
"L1$pb":
        popl %eax
        movl L_C$non_lazy_ptr-"L1$pb"(%eax), %eax
        movq (%eax), %mm0
        movl 4(%esp), %eax
        movq %mm0, (%eax)
        emms
        ret

GCC gives us this:

_baz:
        pushl   %ebx
        call    L3
"L00000000001$pb":
L3:
        popl    %ebx
        subl    $8, %esp
        movl    L_C$non_lazy_ptr-"L00000000001$pb"(%ebx), %eax
        movl    (%eax), %edx
        movl    4(%eax), %ecx
        movl    16(%esp), %eax
        movl    %edx, (%eax)
        movl    %ecx, 4(%eax)
        emms
        addl    $8, %esp
        popl    %ebx
        ret


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35351 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-26 07:53:08 +00:00
..
.cvsignore Add new generated files to be ignored. 2006-03-23 23:45:32 +00:00
AsmWriterEmitter.cpp Files missing from LABEL check in. 2007-01-26 17:29:20 +00:00
AsmWriterEmitter.h Maximally group commands. When all instructions within a command set have a 2006-07-18 18:28:27 +00:00
CallingConvEmitter.cpp Refactoring of formal parameter flags. Enable properly use of 2007-03-07 16:25:09 +00:00
CallingConvEmitter.h *** empty log message *** 2007-02-27 22:05:51 +00:00
CodeEmitterGen.cpp Files missing from LABEL check in. 2007-01-26 17:29:20 +00:00
CodeEmitterGen.h 1. Simplfy bit operations. 2006-07-13 21:02:53 +00:00
CodeGenInstruction.h Recognize target instruction flag 'isReMaterializable'. 2007-03-19 06:20:37 +00:00
CodeGenIntrinsics.h For PR950: 2006-12-31 05:50:28 +00:00
CodeGenRegisters.h
CodeGenTarget.cpp Add support for the v1i64 type. This makes better code for this: 2007-03-26 07:53:08 +00:00
CodeGenTarget.h Added properties such as SDNPHasChain to ComplexPattern. 2006-10-11 21:02:01 +00:00
DAGISelEmitter.cpp Make the constant honest. 2007-01-26 23:00:54 +00:00
DAGISelEmitter.h Parse PredicateOperand's. When an instruction takes one, have the generated 2006-11-04 05:12:02 +00:00
FileLexer.cpp.cvs Regenerate. 2007-02-06 18:20:07 +00:00
FileLexer.l Deemed too cute to live. 2007-02-06 18:19:44 +00:00
FileLexer.l.cvs Regenerate. 2007-02-06 18:20:07 +00:00
FileParser.cpp.cvs What should be the last unnecessary <iostream>s in the library. 2006-12-07 22:21:48 +00:00
FileParser.h.cvs What should be the last unnecessary <iostream>s in the library. 2006-12-07 22:21:48 +00:00
FileParser.y What should be the last unnecessary <iostream>s in the library. 2006-12-07 22:21:48 +00:00
FileParser.y.cvs What should be the last unnecessary <iostream>s in the library. 2006-12-07 22:21:48 +00:00
InstrInfoEmitter.cpp Recognize target instruction flag 'isReMaterializable'. 2007-03-19 06:20:37 +00:00
InstrInfoEmitter.h simplify the way operand flags and constraints are handled, making it easier 2006-11-06 23:49:51 +00:00
IntrinsicEmitter.cpp the lengths of the strings are known, just use memcmp 2007-02-15 19:26:16 +00:00
IntrinsicEmitter.h Automatically generating intrinsic declarations from Dan Gohman. Modified 2007-02-07 20:38:26 +00:00
Makefile Set the new NO_INSTALL flag for build-only tools. 2007-02-06 18:51:28 +00:00
Record.cpp reapply 2007-02-27 22:08:27 +00:00
Record.h reapply 2007-02-27 22:08:27 +00:00
RegisterInfoEmitter.cpp emit an enum value for the # of target registers. 2007-02-26 03:34:38 +00:00
RegisterInfoEmitter.h
SubtargetEmitter.cpp Ignore entries with blank names. 2006-12-12 20:55:58 +00:00
SubtargetEmitter.h
TableGen.cpp reapply 2007-02-27 22:08:27 +00:00
TableGenBackend.cpp What should be the last unnecessary <iostream>s in the library. 2006-12-07 22:21:48 +00:00
TableGenBackend.h