@@ -126,6 +126,7 @@ constexpr const qnn_op_caps_t kOpCaps[] = {
126126 },
127127 {}, // GGML_OP_RMS_NORM_BACK
128128 {}, // GGML_OP_GROUP_NORM
129+ {}, // GGML_OP_L2_NORM
129130 {
130131 // GGML_OP_MUL_MAT
131132 QNN_OP_MAT_MUL, // qnn_op_name
@@ -179,6 +180,7 @@ constexpr const qnn_op_caps_t kOpCaps[] = {
179180 {}, // GGML_OP_ADD_REL_POS
180181 {}, // GGML_OP_RWKV_WKV6
181182 {}, // GGML_OP_GATED_LINEAR_ATTN
183+ {}, // GGML_OP_RWKV_WKV7
182184
183185 {}, // GGML_OP_UNARY
184186
@@ -222,6 +224,8 @@ static_assert(kOpCaps[GGML_OP_ADD].qnn_op_name, "GGML_OP_ADD does not have qnn_o
222224static_assert (kOpCaps [GGML_OP_MUL_MAT].qnn_op_name, " GGML_OP_MUL_MAT does not have qnn_op_name in the kOpCaps table" );
223225static_assert (kOpCaps [GGML_OP_MUL].qnn_op_name, " GGML_OP_MUL does not have qnn_op_name in the kOpCaps table" );
224226static_assert (kOpCaps [GGML_OP_LOG].qnn_op_name, " GGML_OP_LOG does not have qnn_op_name in the kOpCaps table" );
227+ static_assert (kOpCaps [GGML_OP_COUNT + GGML_UNARY_OP_GELU].qnn_op_name,
228+ " GGML_UNARY_OP_GELU does not have qnn_op_name in the kOpCaps table" );
225229static_assert (std::size(kOpCaps ) == (GGML_OP_COUNT + GGML_UNARY_OP_COUNT),
226230 " GGML_OP_COUNT does not match the size of the kOpCaps table" );
227231
@@ -297,6 +301,7 @@ constexpr const op_constructor_t kOpConstructors[] = {
297301 op_constructor_with_type_param<GGML_OP_RMS_NORM, float , qnn::ggml_qnn_rmsnorm_op_config>, // GGML_OP_RMS_NORM
298302 nullptr , // GGML_OP_RMS_NORM_BACK
299303 nullptr , // GGML_OP_GROUP_NORM
304+ nullptr , // GGML_OP_L2_NORM
300305
301306 mat_mul_op_constructor, // GGML_OP_MUL_MAT
302307 nullptr , // GGML_OP_MUL_MAT_ID
@@ -345,6 +350,7 @@ constexpr const op_constructor_t kOpConstructors[] = {
345350 nullptr , // GGML_OP_ADD_REL_POS
346351 nullptr , // GGML_OP_RWKV_WKV6
347352 nullptr , // GGML_OP_GATED_LINEAR_ATTN
353+ nullptr , // GGML_OP_RWKV_WKV7
348354
349355 nullptr , // GGML_OP_UNARY
350356
0 commit comments