|  | ; RUN: llc -march=hexagon < %s | FileCheck %s | 
|  |  | 
|  | declare i32 @ret_i32() | 
|  |  | 
|  | define i8 @test_i8() { | 
|  | ; CHECK-LABEL: test_i8: | 
|  | ; CHECK: jump ret_i32 | 
|  | %res = tail call i32 @ret_i32() | 
|  | %val = trunc i32 %res to i8 | 
|  | ret i8 %val | 
|  | } | 
|  |  | 
|  | define i16 @test_i16() { | 
|  | ; CHECK-LABEL: test_i16: | 
|  | ; CHECK: jump ret_i32 | 
|  | %res = tail call i32 @ret_i32() | 
|  | %val = trunc i32 %res to i16 | 
|  | ret i16 %val | 
|  | } | 
|  |  | 
|  | declare i64 @ret_i64() | 
|  | define i32 @test_i32() { | 
|  | ; CHECK-LABEL: test_i32: | 
|  | ; CHECK: call ret_i64 | 
|  | %res = tail call i64 @ret_i64() | 
|  | %val = trunc i64 %res to i32 | 
|  | ret i32 42 | 
|  | } |