1# RUN: not llvm-mc -triple i386-unknown-unknown %s 2> /dev/null | FileCheck %s
2# RUN: not llvm-mc -triple i386-unknown-unknown %s 2>&1 > /dev/null| FileCheck %s --check-prefix=CHECK-ERROR
3
4# CHECK: .long	1067412619
5# CHECK: .long	1075000115
6# CHECK: .long	1077936128
7# CHECK: .long	1082549862
8.single 1.2455, +2.3, 3, + 4.2
9
10# CHECK: .long	2139095040
11.single InFinIty
12
13# CHECK: .long	4286578688
14.single -iNf
15
16# CHECK: .long	2147483647
17.single nAN
18
19# CHECK: .long  1067928519
20.float 1.307
21
22# CHECK: .quad	4617315517961601024
23# CHECK: .quad	4597526701198935065
24# CHECK: .quad	-4600933674317040845
25.double 5, .232, -11.1
26
27# CHECK: .quad  0
28.double 0.0
29
30# CHECK: .quad  -4570379565595099136
31.double -1.2e3
32# CHECK: .quad  -4690170861623122860
33.double -1.2e-5
34# CHECK: .quad  -4465782973978902528
35.double -1.2e+10
36# CHECK: .quad  4681608360884174848
37.double 1e5
38# CHECK: .quad  4681608360884174848
39.double 1.e5
40# CHECK: .quad  4611686018427387904
41.double 2.
42
43// APFloat should reject these with an error, not crash:
44//.double -1.2e+
45//.double -1.2e
46
47# CHECK: .long 1310177520
48.float 0x12f7.1ep+17
49# CHECK: .long 1084227584
50.float 0x.ap+3
51# CHECK: .quad 4602678819172646912
52.double 0x2.p-2
53# CHECK: .long 1094713344
54.float 0x3p2
55# CHECK: .long 872284160
56.float 0x7fp-30
57# CHECK: .long 3212836864
58.float -0x1.0p0
59
60# CHECK-ERROR: invalid hexadecimal floating-point constant: expected at least one exponent digit
61# CHECK-ERROR: unexpected token in directive
62.float 0xa.apa
63
64# CHECK-ERROR: invalid hexadecimal floating-point constant: expected at least one exponent digit
65# CHECK-ERROR: unexpected token in directive
66.double -0x1.2p+
67
68# CHECK-ERROR: invalid hexadecimal floating-point constant: expected at least one exponent digit
69# CHECK-ERROR: unexpected token in directive
70.double -0x1.2p
71
72# CHECK-ERROR: invalid hexadecimal floating-point constant: expected at least one significand digit
73# CHECK-ERROR: unexpected token in directive
74.float 0xp2
75
76# CHECK-ERROR: invalid hexadecimal floating-point constant: expected at least one significand digit
77# CHECK-ERROR: unexpected token in directive
78.float 0x.p5
79
80# CHECK-ERROR: error: invalid hexadecimal floating-point constant: expected exponent part 'p'
81# CHECK-ERROR: unexpected token in directive
82.float 0x1.2
83