This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 061dc9ab6d3122b61f50d0ec9592e6a2f7a59749
Author:     Ramiro Polla <[email protected]>
AuthorDate: Mon Apr 13 15:16:35 2026 +0200
Commit:     Ramiro Polla <[email protected]>
CommitDate: Wed Jun 10 01:46:29 2026 +0200

    swscale/aarch64/rasm: add blr instruction
    
    And a64op_lr() helper for LR register.
    
    Sponsored-by: Sovereign Tech Fund
    Signed-off-by: Ramiro Polla <[email protected]>
---
 libswscale/aarch64/rasm.h       | 3 +++
 libswscale/aarch64/rasm_print.c | 1 +
 2 files changed, 4 insertions(+)

diff --git a/libswscale/aarch64/rasm.h b/libswscale/aarch64/rasm.h
index a91fc3f291..2ced8d0e95 100644
--- a/libswscale/aarch64/rasm.h
+++ b/libswscale/aarch64/rasm.h
@@ -249,6 +249,7 @@ typedef enum AArch64InsnId {
     AARCH64_INSN_AND,
     AARCH64_INSN_B,
     AARCH64_INSN_BCOND,
+    AARCH64_INSN_BLR,
     AARCH64_INSN_BR,
     AARCH64_INSN_CMP,
     AARCH64_INSN_CSEL,
@@ -351,6 +352,7 @@ static inline uint8_t a64op_gpr_size(RasmOp op) { return 
op.u8[1]; }
 
 static inline RasmOp a64op_gpw(uint8_t n) { return a64op_make_gpr(n, 
sizeof(uint32_t)); }
 static inline RasmOp a64op_gpx(uint8_t n) { return a64op_make_gpr(n, 
sizeof(uint64_t)); }
+static inline RasmOp a64op_lr (void)      { return a64op_make_gpr(30, 
sizeof(uint64_t)); }
 static inline RasmOp a64op_sp (void)      { return a64op_make_gpr(31, 
sizeof(uint64_t)); }
 
 /* modifiers */
@@ -540,6 +542,7 @@ static inline RasmOp a64cond_nv(void) { return 
a64op_cond(AARCH64_COND_NV); }
 #define i_and(rctx,    op0, op1, op2     ) rasm_add_insn(rctx, 
AARCH64_INSN_AND,    op0, op1, op2, OPN)
 #define i_b(rctx,      op0               ) rasm_add_insn(rctx, AARCH64_INSN_B, 
     op0, OPN, OPN, OPN)
 #define i_bcond(rctx,  op0, op1          ) rasm_add_insn(rctx, 
AARCH64_INSN_BCOND,  op0, op1, OPN, OPN)
+#define i_blr(rctx,    op0               ) rasm_add_insn(rctx, 
AARCH64_INSN_BLR,    op0, OPN, OPN, OPN)
 #define i_br(rctx,     op0               ) rasm_add_insn(rctx, 
AARCH64_INSN_BR,     op0, OPN, OPN, OPN)
 #define i_cmp(rctx,    op0, op1          ) rasm_add_insn(rctx, 
AARCH64_INSN_CMP,    op0, op1, OPN, OPN)
 #define i_csel(rctx,   op0, op1, op2, op3) rasm_add_insn(rctx, 
AARCH64_INSN_CSEL,   op0, op1, op2, op3)
diff --git a/libswscale/aarch64/rasm_print.c b/libswscale/aarch64/rasm_print.c
index 8f55d87401..ff870f8a27 100644
--- a/libswscale/aarch64/rasm_print.c
+++ b/libswscale/aarch64/rasm_print.c
@@ -272,6 +272,7 @@ static const char insn_names[AARCH64_INSN_NB][8] = {
     [AARCH64_INSN_AND   ] = "and",
     [AARCH64_INSN_B     ] = "b",
     [AARCH64_INSN_BCOND ] = "b",
+    [AARCH64_INSN_BLR   ] = "blr",
     [AARCH64_INSN_BR    ] = "br",
     [AARCH64_INSN_CMP   ] = "cmp",
     [AARCH64_INSN_CSEL  ] = "csel",

_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to