summaryrefslogtreecommitdiff
path: root/test/avx.asm
blob: 9e5e15bf54c89f65bfecfe2da30f1dcc84b02e5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
;Testname=unoptimized; Arguments=-O0 -fbin -oavx.bin; Files=stdout stderr avx.bin
;Testname=optimized;   Arguments=-Ox -fbin -oavx.bin; Files=stdout stderr avx.bin

		bits 64
		blendvpd	xmm2,xmm1,xmm0

		vblendvpd	xmm2,xmm1,xmm0,xmm0
		vblendvpd	xmm2,xmm1,xmm0
		vblendvpd	ymm2,ymm1,ymm0,ymm0
		vblendvpd	ymm2,ymm1,ymm0

		vcvtsi2sd	xmm9,xmm10,ecx
		vcvtsi2sd	xmm9,xmm10,rcx
		vcvtsi2sd	xmm9,xmm10,dword [rdi]
		vcvtsi2sd	xmm9,xmm10,qword [rdi]

		vpermil2ps	xmm0,xmm1,[rdi],xmm3,0
		vpermil2ps	xmm0,xmm1,xmm2,[rdi],1
		vpermil2ps	ymm0,ymm1,ymm2,ymm3,2
		vpermil2ps	ymm0,ymm1,ymm2,[rdi],3
		vpermil2ps	ymm0,ymm1,[rdi],ymm3,2
		vpermil2ps	ymm0,ymm1,ymm2,[rdi],3

		vpextrb		[rax],xmm1,0x33
		vpextrw		[rax],xmm1,0x33
		vpextrd		[rax],xmm1,0x33
		vpextrq		[rax],xmm1,0x33
		vpextrb		rax,xmm1,0x33
		vpextrw		rax,xmm1,0x33
		vpextrd		rax,xmm1,0x33
		vpextrq		rax,xmm1,0x33
		vpextrb		eax,xmm1,0x33
		vpextrw		eax,xmm1,0x33
		vpextrd		eax,xmm1,0x33
;		vpextrq		eax,xmm1,0x33

		vcvtpd2ps	xmm0,xmm1
		vcvtpd2ps	xmm0,oword [rsi]
		vcvtpd2ps	xmm0,ymm1
		vcvtpd2ps	xmm0,yword [rsi]
;		vcvtpd2ps	xmm0,[rsi]

		vcvtpd2dq	xmm0,xmm1
		vcvtpd2dq	xmm0,oword [rsi]
		vcvtpd2dq	xmm0,ymm1
		vcvtpd2dq	xmm0,yword [rsi]
;		vcvtpd2dq	xmm0,[rsi]

		vcvttpd2dq	xmm0,xmm1
		vcvttpd2dq	xmm0,oword [rsi]
		vcvttpd2dq	xmm0,ymm1
		vcvttpd2dq	xmm0,yword [rsi]
;		vcvttpd2dq	xmm0,[rsi]