From de8e2bb7362271683743d580ca425a35aa28ff54 Mon Sep 17 00:00:00 2001 From: xuchen-intel Date: Tue, 1 Nov 2022 04:32:10 +0530 Subject: [PATCH 1/3] [CPU] Fix incorrect offset to rsp --- src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.cpp b/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.cpp index 47fef46abcd..155678acb0b 100644 --- a/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.cpp +++ b/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.cpp @@ -467,7 +467,7 @@ void jit_avx512_dw_conv_fwd_kernel_bf16::compute_loop( pop(reg_output); pop(reg_input); pop(reg_kernel); - base_post_ops_data_offset -= reg64_size; + base_post_ops_data_offset -= 3 * reg64_size; } else { compute(ur_ch_blocks, masked_ch_block_tail); From 448493ad106b5ab9c7ff5b3d0c97ad27dcfc5ef7 Mon Sep 17 00:00:00 2001 From: xuchen-intel Date: Wed, 9 Nov 2022 07:08:32 +0530 Subject: [PATCH 2/3] [CPU] Fix reg_ch_blocks being messed by its alias --- src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.hpp b/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.hpp index 0ce4cae4e3b..93f44e13b3e 100644 --- a/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.hpp +++ b/src/cpu/x64/jit_avx512_core_bf16_dw_conv_kernel.hpp @@ -61,7 +61,7 @@ struct jit_avx512_dw_conv_fwd_kernel_bf16 : public jit_generator { reg64_t iter_kh = rax; reg64_t reg_oi = rbx; - reg64_t reg_tmp = reg_ch_blocks; + reg64_t reg_tmp = rbp; // fused convolution reg64_t reg_input_buffer_ptr = rdx; From 09e977ac929730c3b3ada7c67fddaaf51a8a3fba Mon Sep 17 00:00:00 2001 From: xuchen-intel Date: Fri, 11 Nov 2022 01:53:57 +0530 Subject: [PATCH 3/3] [CPU] Fix issue regarding pop vmm_mask in jit_uni_depthwise_injector --- src/cpu/x64/injectors/jit_uni_depthwise_injector.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cpu/x64/injectors/jit_uni_depthwise_injector.cpp b/src/cpu/x64/injectors/jit_uni_depthwise_injector.cpp index 9295ed0257b..651fb939a89 100644 --- a/src/cpu/x64/injectors/jit_uni_depthwise_injector.cpp +++ b/src/cpu/x64/injectors/jit_uni_depthwise_injector.cpp @@ -255,7 +255,7 @@ void jit_uni_depthwise_injector_f32::compute(int start_idx, int end_idx, if (need_to_preserve) { if (preserved_vecs_count > 1) pop_vmm(h, vmm_aux0); - if (preserved_vecs_count > 1) + if (preserved_vecs_count > 0) pop_vmm(h, vmm_mask); } }