Please use GitHub pull requests for new patches. Avoid migrating existing patches. Phabricator shutdown timeline
Changeset View
Changeset View
Standalone View
Standalone View
test/CodeGen/X86/return-ext.ll
Show First 20 Lines • Show All 100 Lines • ▼ Show 20 Lines | entry: | ||||
%1 = zext i1 %0 to i32 | %1 = zext i1 %0 to i32 | ||||
ret i32 %1 | ret i32 %1 | ||||
; The high 24 bits of %eax from a function returning i1 are undefined. | ; The high 24 bits of %eax from a function returning i1 are undefined. | ||||
; CHECK-LABEL: use_i1: | ; CHECK-LABEL: use_i1: | ||||
; CHECK: call | ; CHECK: call | ||||
; CHECK-NEXT: movzbl | ; CHECK-NEXT: movzbl | ||||
; CHECK-NEXT: {{pop|add}} | ; CHECK-NEXT: {{pop|add}} | ||||
; CHECK-NEXT: : | |||||
; CHECK-NEXT: .cfi_def_cfa_offset {{4|8}} | |||||
; CHECK-NEXT: ret | ; CHECK-NEXT: ret | ||||
} | } | ||||
define i32 @use_i8() { | define i32 @use_i8() { | ||||
entry: | entry: | ||||
%0 = call i8 @unsigned_i8(); | %0 = call i8 @unsigned_i8(); | ||||
%1 = zext i8 %0 to i32 | %1 = zext i8 %0 to i32 | ||||
ret i32 %1 | ret i32 %1 | ||||
; The high 24 bits of %eax from a function returning i8 are undefined. | ; The high 24 bits of %eax from a function returning i8 are undefined. | ||||
; CHECK-LABEL: use_i8: | ; CHECK-LABEL: use_i8: | ||||
; CHECK: call | ; CHECK: call | ||||
; CHECK-NEXT: movzbl | ; CHECK-NEXT: movzbl | ||||
; CHECK-NEXT: {{pop|add}} | ; CHECK-NEXT: {{pop|add}} | ||||
; CHECK-NEXT: : | |||||
; CHECK-NEXT: .cfi_def_cfa_offset {{4|8}} | |||||
; CHECK-NEXT: ret | ; CHECK-NEXT: ret | ||||
} | } | ||||
define i32 @use_i16() { | define i32 @use_i16() { | ||||
entry: | entry: | ||||
%0 = call i16 @unsigned_i16(); | %0 = call i16 @unsigned_i16(); | ||||
%1 = zext i16 %0 to i32 | %1 = zext i16 %0 to i32 | ||||
ret i32 %1 | ret i32 %1 | ||||
; The high 16 bits of %eax from a function returning i16 are undefined. | ; The high 16 bits of %eax from a function returning i16 are undefined. | ||||
; CHECK-LABEL: use_i16: | ; CHECK-LABEL: use_i16: | ||||
; CHECK: call | ; CHECK: call | ||||
; CHECK-NEXT: movzwl | ; CHECK-NEXT: movzwl | ||||
; CHECK-NEXT: {{pop|add}} | ; CHECK-NEXT: {{pop|add}} | ||||
; CHECK-NEXT: : | |||||
; CHECK-NEXT: .cfi_def_cfa_offset {{4|8}} | |||||
; CHECK-NEXT: ret | ; CHECK-NEXT: ret | ||||
} | } |