summaryrefslogtreecommitdiff
path: root/v5
diff options
context:
space:
mode:
authorMaciej Żenczykowski <maze@google.com>2024-02-10 00:22:25 -0800
committerMaciej Żenczykowski <maze@google.com>2024-02-10 00:49:47 -0800
commit526c97ef17c9bb617a4efc5fe56d4a70c56dfa16 (patch)
tree516961f3a96bad999418bd0998af2456855c5693 /v5
parent7816ba5be9a2f3d839652b7af0cd1d9f9fd98fab (diff)
downloadapf-526c97ef17c9bb617a4efc5fe56d4a70c56dfa16.tar.gz
v5: simplify LDM_EXT_OPCODE
Test: TreeHugger Signed-off-by: Maciej Żenczykowski <maze@google.com> Change-Id: Iade679f6c3ce73553700dbd8e50c62296add2581
Diffstat (limited to 'v5')
-rw-r--r--v5/apf_interpreter.c9
-rw-r--r--v5/apf_interpreter_source.c9
2 files changed, 2 insertions, 16 deletions
diff --git a/v5/apf_interpreter.c b/v5/apf_interpreter.c
index 3d87e5b..757fb7b 100644
--- a/v5/apf_interpreter.c
+++ b/v5/apf_interpreter.c
@@ -880,14 +880,7 @@ static int do_apf_run(apf_context* ctx) {
imm = PKTDATACOPYIMM_EXT_OPCODE;
FALLTHROUGH;
case EXT_OPCODE:
- if (
-/* If LDM_EXT_OPCODE is 0 and imm is compared with it, a compiler error will result, */
-/* instead just enforce that imm is unsigned (so it's always greater or equal to 0). */
-#if LDM_EXT_OPCODE == 0
- ENFORCE_UNSIGNED(imm) &&
-#else
- imm >= LDM_EXT_OPCODE &&
-#endif
+ if (/* imm >= LDM_EXT_OPCODE && -- but note imm is u32 and LDM_EXT_OPCODE is 0 */
imm < (LDM_EXT_OPCODE + MEMORY_ITEMS)) {
REG = ctx->mem.slot[imm - LDM_EXT_OPCODE];
} else if (imm >= STM_EXT_OPCODE && imm < (STM_EXT_OPCODE + MEMORY_ITEMS)) {
diff --git a/v5/apf_interpreter_source.c b/v5/apf_interpreter_source.c
index 73b26d0..436e376 100644
--- a/v5/apf_interpreter_source.c
+++ b/v5/apf_interpreter_source.c
@@ -293,14 +293,7 @@ static int do_apf_run(apf_context* ctx) {
imm = PKTDATACOPYIMM_EXT_OPCODE;
FALLTHROUGH;
case EXT_OPCODE:
- if (
-// If LDM_EXT_OPCODE is 0 and imm is compared with it, a compiler error will result,
-// instead just enforce that imm is unsigned (so it's always greater or equal to 0).
-#if LDM_EXT_OPCODE == 0
- ENFORCE_UNSIGNED(imm) &&
-#else
- imm >= LDM_EXT_OPCODE &&
-#endif
+ if (// imm >= LDM_EXT_OPCODE && -- but note imm is u32 and LDM_EXT_OPCODE is 0
imm < (LDM_EXT_OPCODE + MEMORY_ITEMS)) {
REG = ctx->mem.slot[imm - LDM_EXT_OPCODE];
} else if (imm >= STM_EXT_OPCODE && imm < (STM_EXT_OPCODE + MEMORY_ITEMS)) {