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