aboutsummaryrefslogtreecommitdiffstats
path: root/test/ExecutionEngine/test-cast.ll
blob: a0d6403a1b44096cdfc986cbcf89e0501cd93154 (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

int %foo() {
  ret int 0
}

int %main() {
  ; cast bool to ...
  cast bool true to bool
  cast bool true to int

  ; cast sbyte to ...
  cast sbyte 0 to sbyte
  cast sbyte 4 to short
  cast sbyte 4 to long
  cast sbyte 4 to ulong
  cast sbyte 4 to double

  ; cast short to ...
  cast short 0 to short
  cast short 0 to long
  cast short 0 to ulong
  cast short 0 to double

  ; cast int to ...
  cast int 6 to bool
  cast int 6 to short
  cast int 0 to int
  cast int 0 to long
  cast int 0 to ulong
  cast int 0 to double

  ; cast uint to ...
  cast uint 0 to long
  cast uint 0 to ulong

  ; cast long to ...
  cast long 0 to sbyte
  cast long 0 to ubyte
  cast long 0 to short
  cast long 0 to ushort
  cast long 0 to int
  cast long 0 to uint
  cast long 0 to long
  cast long 0 to ulong
  cast long 0 to float
  cast long 0 to double
  
  ; cast float to ...
  cast float 0.0 to float
  cast float 0.0 to double

  ; cast double to ...
  cast double 0.0 to sbyte
  cast double 0.0 to ubyte
  cast double 0.0 to short
  cast double 0.0 to ushort
  cast double 0.0 to int
  cast double 0.0 to uint
  cast double 0.0 to long
  ;cast double 0.0 to ulong
  cast double 0.0 to float
  cast double 0.0 to double

  ret int 0
}