From 0909d83d89607674ccb9d8a14e7f52cef0e34dc4 Mon Sep 17 00:00:00 2001 From: VirdhatchaniKN Date: Thu, 28 Nov 2024 09:55:50 +0000 Subject: [PATCH] #13415: Update left shift --- .../metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h | 10 +++------- .../metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h | 10 +++------- 2 files changed, 6 insertions(+), 14 deletions(-) diff --git a/tt_metal/hw/ckernels/blackhole/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h b/tt_metal/hw/ckernels/blackhole/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h index b2324d646334..ef7056e8834a 100644 --- a/tt_metal/hw/ckernels/blackhole/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h +++ b/tt_metal/hw/ckernels/blackhole/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h @@ -17,13 +17,9 @@ template inline void calculate_left_shift(const uint shift_amt) { #pragma GCC unroll 0 for (int d = 0; d < ITERATIONS; d++) { - vInt val = dst_reg[0]; - vInt v = val; - - val = val << shift_amt; - val = setsgn(val, v); - dst_reg[0] = val; - + TTI_SFPLOAD(0,4,3,0); + TT_SFPSHFT(shift_amt,0,0,1); + TTI_SFPSTORE(0,4,3,0); dst_reg++; } } diff --git a/tt_metal/hw/ckernels/wormhole_b0/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h b/tt_metal/hw/ckernels/wormhole_b0/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h index b2324d646334..ef7056e8834a 100644 --- a/tt_metal/hw/ckernels/wormhole_b0/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h +++ b/tt_metal/hw/ckernels/wormhole_b0/metal/llk_api/llk_sfpu/ckernel_sfpu_left_shift.h @@ -17,13 +17,9 @@ template inline void calculate_left_shift(const uint shift_amt) { #pragma GCC unroll 0 for (int d = 0; d < ITERATIONS; d++) { - vInt val = dst_reg[0]; - vInt v = val; - - val = val << shift_amt; - val = setsgn(val, v); - dst_reg[0] = val; - + TTI_SFPLOAD(0,4,3,0); + TT_SFPSHFT(shift_amt,0,0,1); + TTI_SFPSTORE(0,4,3,0); dst_reg++; } }