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/avx512-schedule.ll
- This file is larger than 256 KB, so syntax highlighting is disabled by default.
Show First 20 Lines • Show All 7,179 Lines • ▼ Show 20 Lines | |||||
; CHECK-NEXT: .cfi_def_cfa_offset 32 | ; CHECK-NEXT: .cfi_def_cfa_offset 32 | ||||
; CHECK-NEXT: vaddss %xmm0, %xmm0, %xmm0 # sched: [4:0.33] | ; CHECK-NEXT: vaddss %xmm0, %xmm0, %xmm0 # sched: [4:0.33] | ||||
; CHECK-NEXT: vmovaps %xmm0, (%rsp) # 16-byte Spill sched: [1:1.00] | ; CHECK-NEXT: vmovaps %xmm0, (%rsp) # 16-byte Spill sched: [1:1.00] | ||||
; CHECK-NEXT: # sched: [1:1.00] | ; CHECK-NEXT: # sched: [1:1.00] | ||||
; CHECK-NEXT: callq func_f32 | ; CHECK-NEXT: callq func_f32 | ||||
; CHECK-NEXT: vbroadcastss (%rsp), %zmm0 # 16-byte Folded Reload sched: [8:0.50] | ; CHECK-NEXT: vbroadcastss (%rsp), %zmm0 # 16-byte Folded Reload sched: [8:0.50] | ||||
; CHECK-NEXT: # sched: [8:0.50] | ; CHECK-NEXT: # sched: [8:0.50] | ||||
; CHECK-NEXT: addq $24, %rsp # sched: [1:0.25] | ; CHECK-NEXT: addq $24, %rsp # sched: [1:0.25] | ||||
; CHECK-NEXT: .Lcfi1: | |||||
; CHECK-NEXT: .cfi_def_cfa_offset 8 | |||||
; CHECK-NEXT: retq # sched: [7:1.00] | ; CHECK-NEXT: retq # sched: [7:1.00] | ||||
%a = fadd float %x, %x | %a = fadd float %x, %x | ||||
call void @func_f32(float %a) | call void @func_f32(float %a) | ||||
%b = insertelement <16 x float> undef, float %a, i32 0 | %b = insertelement <16 x float> undef, float %a, i32 0 | ||||
%c = shufflevector <16 x float> %b, <16 x float> undef, <16 x i32> zeroinitializer | %c = shufflevector <16 x float> %b, <16 x float> undef, <16 x i32> zeroinitializer | ||||
ret <16 x float> %c | ret <16 x float> %c | ||||
} | } | ||||
declare void @func_f64(double) | declare void @func_f64(double) | ||||
define <8 x double> @broadcast_sd_spill(double %x) { | define <8 x double> @broadcast_sd_spill(double %x) { | ||||
; CHECK-LABEL: broadcast_sd_spill: | ; CHECK-LABEL: broadcast_sd_spill: | ||||
; CHECK: # BB#0: | ; CHECK: # BB#0: | ||||
; CHECK-NEXT: subq $24, %rsp # sched: [1:0.25] | ; CHECK-NEXT: subq $24, %rsp # sched: [1:0.25] | ||||
; CHECK-NEXT: .Lcfi1: | ; CHECK-NEXT: .Lcfi2: | ||||
; CHECK-NEXT: .cfi_def_cfa_offset 32 | ; CHECK-NEXT: .cfi_def_cfa_offset 32 | ||||
; CHECK-NEXT: vaddsd %xmm0, %xmm0, %xmm0 # sched: [4:0.33] | ; CHECK-NEXT: vaddsd %xmm0, %xmm0, %xmm0 # sched: [4:0.33] | ||||
; CHECK-NEXT: vmovapd %xmm0, (%rsp) # 16-byte Spill sched: [1:1.00] | ; CHECK-NEXT: vmovapd %xmm0, (%rsp) # 16-byte Spill sched: [1:1.00] | ||||
; CHECK-NEXT: # sched: [1:1.00] | ; CHECK-NEXT: # sched: [1:1.00] | ||||
; CHECK-NEXT: callq func_f64 | ; CHECK-NEXT: callq func_f64 | ||||
; CHECK-NEXT: vbroadcastsd (%rsp), %zmm0 # 16-byte Folded Reload sched: [8:0.50] | ; CHECK-NEXT: vbroadcastsd (%rsp), %zmm0 # 16-byte Folded Reload sched: [8:0.50] | ||||
; CHECK-NEXT: # sched: [8:0.50] | ; CHECK-NEXT: # sched: [8:0.50] | ||||
; CHECK-NEXT: addq $24, %rsp # sched: [1:0.25] | ; CHECK-NEXT: addq $24, %rsp # sched: [1:0.25] | ||||
; CHECK-NEXT: .Lcfi3: | |||||
; CHECK-NEXT: .cfi_def_cfa_offset 8 | |||||
; CHECK-NEXT: retq # sched: [7:1.00] | ; CHECK-NEXT: retq # sched: [7:1.00] | ||||
%a = fadd double %x, %x | %a = fadd double %x, %x | ||||
call void @func_f64(double %a) | call void @func_f64(double %a) | ||||
%b = insertelement <8 x double> undef, double %a, i32 0 | %b = insertelement <8 x double> undef, double %a, i32 0 | ||||
%c = shufflevector <8 x double> %b, <8 x double> undef, <8 x i32> zeroinitializer | %c = shufflevector <8 x double> %b, <8 x double> undef, <8 x i32> zeroinitializer | ||||
ret <8 x double> %c | ret <8 x double> %c | ||||
} | } |