summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/i386/inval.s
blob: 7adfec64600a453430c2883e1115fec13e386426 (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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
	.text
	.allow_index_reg
# All the following should be illegal
	mov	(%dx),%al
	mov	(%eax,%esp,2),%al
	setae	%eax
	pushb	%ds
	popb	%ds
	pushb	%al
	popb	%al
	pushb	%ah
	popb	%ah
	pushb	%ax
	popb	%ax
	pushb	%eax
	popb	%eax
	movb	%ds,%ax
	movb	%ds,%eax
	movb	%ax,%ds
	movb	%eax,%ds
	movdb	%eax,%mm0
	movqb	0,%mm0
	ldsb	0,%eax
	setnew	0
	movdw	%eax,%mm0
	movqw	0,%mm0
	div	%cx,%al
	div	%cl,%ax
	div	%ecx,%al
	imul	10,%bx,%ecx
	imul	10,%bx,%al
	popab
	stil
	aaab
	cwdel
	cwdw
	callww	0
foo:	jaw	foo
	jcxzw	foo
	jecxzl	foo
	loopb	foo
	xlatw	%es:%bx
	xlatl	%es:%bx
	intl	2
	int3b
	hltb
	fstb	%st(0)
	fcompll	28(%ebp)
	fldlw	(%eax)
	movl	$%ebx,%eax
	insertq	$4,$2,%xmm2,%ebx
	cvtsi2ssq (%eax),%xmm1
	cvtsi2sdq (%eax),%xmm1
	fnstsw %eax
	fnstsw %al
	fstsw %eax
	fstsw %al

movnti %ax, (%eax)
movntiw %ax, (%eax)

	add (%si,%esi), %eax
	add (%esi,%si), %eax
	add (%eiz), %eax
	add (%eax), %eiz

	mov %cr0, %di
	mov %ax, %cr7
	mov %cr0, %bh
	mov %al, %cr7

	.intel_syntax noprefix
	cvtsi2ss xmm1,QWORD PTR [eax]
	cvtsi2sd xmm1,QWORD PTR [eax]
	cvtsi2ssq xmm1,QWORD PTR [eax]
	cvtsi2sdq xmm1,QWORD PTR [eax]
	movq xmm1, XMMWORD PTR [esp]
	movq xmm1, DWORD PTR [esp]
	movq xmm1, WORD PTR [esp]
	movq xmm1, BYTE PTR [esp]
	movq XMMWORD PTR [esp],xmm1
	movq DWORD PTR [esp],xmm1
	movq WORD PTR [esp],xmm1
	movq BYTE PTR [esp],xmm1
	fnstsw eax
	fnstsw al
	fstsw eax
	fstsw al

movsx ax, [eax]
movsx eax, [eax]
movzx ax, [eax]
movzx eax, [eax]

movnti word ptr [eax], ax

	shl [eax], 1
	rol [ecx], 2
	rcl [edx], cl

	.att_syntax prefix
	movsd (%esi), %ss:(%edi), %ss:(%eax)

	movl	%ds, %ax
	movl	%ax, %ds
	movl	%ax, %bx

	movw	%ds, %eax
	movw	%eax, %ds
	movw	%eax, %ebx

	inb	%dx, %ax
	outb	%ax, %dx
	movb	%ax, %bx