| Chandler Carruth | a5a29f9 | 2012-07-02 12:47:22 +0000 | [diff] [blame] | 1 | ; RUN: opt < %s -inline -S | grep "ret i32 1" | 
| Reid Spencer | 6c38f0b | 2006-11-27 01:05:10 +0000 | [diff] [blame] | 2 | ; ModuleID = 'short.opt.bc' | 
|  | 3 |  | 
| Tanya Lattner | 5640bd1 | 2008-03-01 09:15:35 +0000 | [diff] [blame] | 4 | define i32 @testBool(i1 %X) { | 
|  | 5 | %tmp = zext i1 %X to i32                ; <i32> [#uses=1] | 
|  | 6 | ret i32 %tmp | 
| Reid Spencer | 6c38f0b | 2006-11-27 01:05:10 +0000 | [diff] [blame] | 7 | } | 
|  | 8 |  | 
| Tanya Lattner | 5640bd1 | 2008-03-01 09:15:35 +0000 | [diff] [blame] | 9 | define i32 @testByte(i8 %X) { | 
|  | 10 | %tmp = icmp ne i8 %X, 0         ; <i1> [#uses=1] | 
|  | 11 | %tmp.i = zext i1 %tmp to i32            ; <i32> [#uses=1] | 
|  | 12 | ret i32 %tmp.i | 
| Reid Spencer | 6c38f0b | 2006-11-27 01:05:10 +0000 | [diff] [blame] | 13 | } | 
|  | 14 |  | 
| Tanya Lattner | 5640bd1 | 2008-03-01 09:15:35 +0000 | [diff] [blame] | 15 | define i32 @main() { | 
|  | 16 | %rslt = call i32 @testByte( i8 123 )            ; <i32> [#uses=1] | 
|  | 17 | ret i32 %rslt | 
| Reid Spencer | 6c38f0b | 2006-11-27 01:05:10 +0000 | [diff] [blame] | 18 | } | 
| Tanya Lattner | 5640bd1 | 2008-03-01 09:15:35 +0000 | [diff] [blame] | 19 |  |