mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-23 12:40:17 +00:00
Updated.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35352 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
eebc8a1bc5
commit
aadcea33d1
@ -3,57 +3,3 @@
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
||||
We should compile
|
||||
|
||||
#include <mmintrin.h>
|
||||
|
||||
extern __m64 C;
|
||||
|
||||
void baz(__v2si *A, __v2si *B)
|
||||
{
|
||||
*A = __builtin_ia32_psllq(*B, C);
|
||||
_mm_empty();
|
||||
}
|
||||
|
||||
to:
|
||||
|
||||
.globl _baz
|
||||
_baz:
|
||||
call L3
|
||||
"L00000000001$pb":
|
||||
L3:
|
||||
popl %ecx
|
||||
subl $12, %esp
|
||||
movl 20(%esp), %eax
|
||||
movq (%eax), %mm0
|
||||
movl L_C$non_lazy_ptr-"L00000000001$pb"(%ecx), %eax
|
||||
movq (%eax), %mm1
|
||||
movl 16(%esp), %eax
|
||||
psllq %mm1, %mm0
|
||||
movq %mm0, (%eax)
|
||||
emms
|
||||
addl $12, %esp
|
||||
ret
|
||||
|
||||
not:
|
||||
|
||||
_baz:
|
||||
subl $12, %esp
|
||||
call "L1$pb"
|
||||
"L1$pb":
|
||||
popl %eax
|
||||
movl L_C$non_lazy_ptr-"L1$pb"(%eax), %eax
|
||||
movl (%eax), %ecx
|
||||
movl %ecx, (%esp)
|
||||
movl 4(%eax), %eax
|
||||
movl %eax, 4(%esp)
|
||||
movl 20(%esp), %eax
|
||||
movq (%eax), %mm0
|
||||
movq (%esp), %mm1
|
||||
psllq %mm1, %mm0
|
||||
movl 16(%esp), %eax
|
||||
movq %mm0, (%eax)
|
||||
emms
|
||||
addl $12, %esp
|
||||
ret
|
||||
|
Loading…
Reference in New Issue
Block a user