1# sparc64 set insn handling (includes set, setuw, setsw, setx)
2
3foo:
4	set foo,%g2
5	set 0x76543210,%g3
6	set 0,%g4
7	set 65535,%g5
8
9	setx foo,%g1,%g2
10
11	setx -1,%g1,%g3
12	setx 0,%g1,%g3
13	setx 1,%g1,%g3
14	setx 4095,%g1,%g3
15	setx 4096,%g1,%g3
16	setx -4096,%g1,%g3
17	setx -4097,%g1,%g3
18	setx 65535,%g1,%g3
19	setx -65536,%g1,%g3
20
21	setx 2147483647,%g1,%g4
22	setx 2147483648,%g1,%g4
23	setx -2147483648,%g1,%g4
24	setx -2147483649,%g1,%g4
25	setx 4294967295,%g1,%g4
26	setx 4294967296,%g1,%g4
27
28! GAS doesn't handle large base10 numbers yet.
29!	setx 9223372036854775807,%g1,%g5
30!	setx 9223372036854775808,%g1,%g5
31!	setx -9223372036854775808,%g1,%g5
32!	setx -9223372036854775809,%g1,%g5
33
34	setx 0x7fffffffffffffff,%g1,%g5
35	setx 0x8000000000000000,%g1,%g5		! test only hh22 needed
36	setx 0xffffffff00000000,%g1,%g5		! test only hm10 needed
37	setx 0xffffffff80000000,%g1,%g5		! test sign-ext of lower 32
38	setx 0xffff0000ffff0000,%g1,%g5		! test hh22,hi22
39	setx 0xffff000000000001,%g1,%g5		! test hh22,lo10
40	setx 0x00000001ffff0001,%g1,%g5		! test hm10,hi22,lo10
41	setx 0x00000001ffff0000,%g1,%g5		! test hm10,hi22
42	setx 0x0000000100000001,%g1,%g5		! test hm10,lo10
43
44	setuw foo,%g2
45	setuw 0x76543210,%g3
46	setuw 0,%g4
47	setuw 65535,%g5
48
49	setsw foo,%g2
50	setsw 0x76543210,%g3
51	setsw 0,%g4
52	setsw 65535,%g5
53	setsw 0xffffffff,%g1
54	setsw 0x7fffffff,%g2
55	setsw 0xffff0000,%g3
56	setsw -1,%g4
57