Skip to content

Instantly share code, notes, and snippets.

@lu-zero
Created February 12, 2020 17:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lu-zero/de6e5effec81612b314293e91d346e3f to your computer and use it in GitHub Desktop.
Save lu-zero/de6e5effec81612b314293e91d346e3f to your computer and use it in GitHub Desktop.
--- write_coeffs_lv_map-v0.2.0.asm 2020-02-12 17:55:40.000000000 +0100
+++ write_coeffs_lv_map-master.asm 2020-02-12 17:50:26.000000000 +0100
@@ -1,16 +1,16 @@
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/adapters/zip.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ops/arith.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/cmp.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ptr/const_ptr.rs does not exist!
file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/slice/mod.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ops/arith.rs does not exist!
file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/option.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ptr/mut_ptr.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/range.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/traits/iterator.rs does not exist!
file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/adapters/mod.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/cmp.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/adapters/zip.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ptr/mut_ptr.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ptr/const_ptr.rs does not exist!
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/ptr/mod.rs does not exist!
file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/num/mod.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/traits/double_ended.rs does not exist!
-file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/traits/iterator.rs does not exist!
-rav1e::context::ContextWriter::write_coeffs_lv_map (src/context.rs:3947):
+file /rustc/58b834344fc7b9185e7a50db1ff24e5eb07dae5e/src/libcore/iter/range.rs does not exist!
+rav1e::context::ContextWriter::write_coeffs_lv_map (src/context.rs:4108):
push rbp
mov rbp, rsp
push r15
@@ -19,1967 +19,974 @@
push r12
push rbx
and rsp, -32
- mov eax, 13248
+ mov eax, 4704
call ___rust_probestack
sub rsp, rax
- mov qword, ptr, [rsp, +, 176], r9
- mov qword, ptr, [rsp, +, 168], r8
- mov r12, rcx
- mov qword, ptr, [rsp, +, 112], rdx
- mov qword, ptr, [rsp, +, 32], rsi
- mov r11d, dword, ptr, [rbp, +, 40]
- lea rax, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE]
- mov al, byte, ptr, [rax, +, 8*r11]
- lea rcx, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.694]
- mov r14, qword, ptr, [rcx, +, 8*r11]
- mov r13d, 1
- mov ecx, r14d
- shl r13, cl
- mov qword, ptr, [rsp, +, 56], r13
- mov ecx, eax
- shl r13, cl
- cmp r13, 1025
- jae LBB391_349
- mov r15, rdi
- mov edx, dword, ptr, [rbp, +, 48]
- mov r9b, byte, ptr, [rbp, +, 56]
- mov rbx, qword, ptr, [rbp, +, 24]
- mov rdi, qword, ptr, [rbp, +, 16]
- mov rax, r11
- shl rax, 8
- lea rcx, [rip, +, __ZN5rav1e10scan_order15av1_scan_orders17hfc198d9ca8442d4dE]
+ mov qword, ptr, [rsp, +, 120], r9
+ mov qword, ptr, [rsp, +, 112], r8
+ mov qword, ptr, [rsp, +, 64], rcx
+ mov qword, ptr, [rsp, +, 56], rdx
+ mov qword, ptr, [rsp, +, 40], rsi
+ mov qword, ptr, [rsp, +, 24], rdi
+ mov edx, dword, ptr, [rbp, +, 56]
+ mov ebx, dword, ptr, [rbp, +, 48]
+ mov rdi, qword, ptr, [rbp, +, 32]
+ mov rcx, rbx
+ shl rcx, 8
+ lea rax, [rip, +, __ZN5rav1e10scan_order15av1_scan_orders17h4940baa6a18c9de8E]
+ add rax, rcx
+ mov rcx, rdx
+ shl rcx, 4
+ mov rsi, qword, ptr, [rcx, +, rax, +, 8]
+ cmp rsi, rdi
+ jb LBB450_159
+ mov rax, qword, ptr, [rcx, +, rax]
+ mov qword, ptr, [rsp, +, 136], rax
+ lea ecx, [rbx, -, 4]
+ mov eax, ebx
+ cmp ecx, 14
+ ja LBB450_6
+ lea rax, [rip, +, LJTI450_0]
+ movsxd rcx, dword, ptr, [rax, +, 4*rcx]
add rcx, rax
- mov rax, rdx
- shl rax, 4
- mov rdx, qword, ptr, [rax, +, rcx]
- mov qword, ptr, [rsp, +, 192], rdx
- mov rax, qword, ptr, [rax, +, rcx, +, 8]
- mov qword, ptr, [rsp, +, 152], rax
+ mov eax, ebx
+ jmp rcx
+LBB450_3:
+ mov eax, 3
+ jmp LBB450_6
+LBB450_4:
+ mov eax, 9
+ jmp LBB450_6
+LBB450_5:
+ mov eax, 10
+LBB450_6:
+ mov r8b, byte, ptr, [rbp, +, 64]
+ mov r15, qword, ptr, [rbp, +, 24]
+ mov r13, qword, ptr, [rbp, +, 16]
+ mov eax, eax
+ lea rcx, [rip, +, l_switch.table._ZN5rav1e11recon_intra15has_bottom_left17h257f618759d00753E.430]
+ mov rcx, qword, ptr, [rcx, +, 8*rax]
+ mov eax, 1
+ mov qword, ptr, [rsp, +, 80], rcx
+ shl rax, cl
+ mov qword, ptr, [rsp, +, 72], rax
+ lea r14, [rsp, +, 2208]
+ mov word, ptr, [rsp, +, 2208], 0
+ mov rdx, qword, ptr, [rsp, +, 136]
+ lea r9, [rdx, +, 2*rdi]
+ lea rcx, [rdi, +, rdi]
+ xor ebx, ebx
+LBB450_7:
+ test rcx, rcx
+ je LBB450_15
+ movzx esi, word, ptr, [rdx]
+ cmp rsi, r15
+ jae LBB450_9
+ lea rdi, [rsp, +, 2*rbx, +, 160]
+ lea rax, [rdx, +, 2]
+ movzx esi, word, ptr, [r13, +, 2*rsi]
+ mov word, ptr, [rdi], si
+ cmp rax, r9
+ je LBB450_14
+ movzx esi, word, ptr, [rax]
+ cmp rsi, r15
+ jae LBB450_10
+ add rdx, 4
+ movzx eax, word, ptr, [r13, +, 2*rsi]
+ mov word, ptr, [rsp, +, 2*rbx, +, 162], ax
+ add rbx, 2
+ add rcx, -4
+ add rdi, 4
+ cmp rdi, r14
+ jne LBB450_7
+ jmp LBB450_15
+LBB450_14:
+ inc rbx
+LBB450_15:
+ mov word, ptr, [rsp, +, 2208], bx
+ movzx eax, bx
+ xor r14d, r14d
+ mov edi, 0
add rax, rax
- xor ecx, ecx
-LBB391_2:
- test rax, rax
- je LBB391_5
- mov rdx, qword, ptr, [rsp, +, 192]
- movzx esi, word, ptr, [rdx, +, 2*rcx]
- cmp rsi, rbx
- jae LBB391_325
- mov edx, dword, ptr, [rdi, +, 4*rsi]
- mov dword, ptr, [rsp, +, 4*rcx, +, 224], edx
+ je LBB450_28
+ lea rcx, [rbx, +, rbx, -, 2]
+ shr rcx
inc rcx
- add rax, -2
- cmp r13, rcx
- jne LBB391_2
-LBB391_5:
- lea rcx, [4*r13]
- xor r10d, r10d
- test rcx, rcx
- je LBB391_21
- lea rax, [rsp, +, 4*r13, +, 224]
- lea rdx, [4*r13, -, 4]
- shr rdx, 2
- inc rdx
- cmp rdx, 8
- jae LBB391_8
- lea rdx, [rsp, +, 224]
- xor ebx, ebx
- jmp LBB391_15
-LBB391_8:
- mov r8, rdx
- and r8, -8
- lea rdi, [r8, -, 8]
+ cmp rcx, 8
+ jae LBB450_18
+ lea rax, [rsp, +, 160]
+ xor edi, edi
+ jmp LBB450_26
+LBB450_18:
+ mov r9, rcx
+ and r9, -8
+ lea rdi, [r9, -, 8]
mov rsi, rdi
shr rsi, 3
inc rsi
- mov r10d, esi
- and r10d, 1
+ mov eax, esi
+ and eax, 1
test rdi, rdi
- je LBB391_104
- mov rdi, r10
+ je LBB450_19
+ mov rdi, rax
sub rdi, rsi
pxor xmm0, xmm0
- xor ebx, ebx
+ xor esi, esi
pxor xmm1, xmm1
-LBB391_10:
- pabsd xmm2, xmmword, ptr, [rsp, +, 4*rbx, +, 224]
- paddd xmm2, xmm0
- pabsd xmm3, xmmword, ptr, [rsp, +, 4*rbx, +, 240]
- paddd xmm3, xmm1
- pabsd xmm0, xmmword, ptr, [rsp, +, 4*rbx, +, 256]
- pabsd xmm1, xmmword, ptr, [rsp, +, 4*rbx, +, 272]
- paddd xmm0, xmm2
- paddd xmm1, xmm3
- add rbx, 16
+LBB450_21:
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 166]
+ movd xmm2, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 164]
+ movd xmm3, edx
+ punpckldq xmm3, xmm2
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 162]
+ movd xmm2, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 160]
+ movd xmm4, edx
+ punpckldq xmm4, xmm2
+ punpcklqdq xmm4, xmm3
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 174]
+ movd xmm2, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 172]
+ movd xmm3, edx
+ punpckldq xmm3, xmm2
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 170]
+ movd xmm2, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 168]
+ movd xmm5, edx
+ punpckldq xmm5, xmm2
+ punpcklqdq xmm5, xmm3
+ pabsd xmm3, xmm4
+ pabsd xmm2, xmm5
+ pslld xmm3, 16
+ psrad xmm3, 16
+ paddd xmm3, xmm0
+ pslld xmm2, 16
+ psrad xmm2, 16
+ paddd xmm2, xmm1
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 182]
+ movd xmm0, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 180]
+ movd xmm1, edx
+ punpckldq xmm1, xmm0
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 178]
+ movd xmm0, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 176]
+ movd xmm4, edx
+ punpckldq xmm4, xmm0
+ punpcklqdq xmm4, xmm1
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 190]
+ movd xmm0, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 188]
+ movd xmm1, edx
+ punpckldq xmm1, xmm0
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 186]
+ movd xmm0, edx
+ movsx edx, word, ptr, [rsp, +, 2*rsi, +, 184]
+ movd xmm5, edx
+ punpckldq xmm5, xmm0
+ punpcklqdq xmm5, xmm1
+ pabsd xmm0, xmm4
+ pabsd xmm1, xmm5
+ pslld xmm0, 16
+ psrad xmm0, 16
+ paddd xmm0, xmm3
+ pslld xmm1, 16
+ psrad xmm1, 16
+ paddd xmm1, xmm2
+ add rsi, 16
add rdi, 2
- jne LBB391_10
- test r10, r10
- je LBB391_13
-LBB391_12:
- pabsd xmm2, xmmword, ptr, [rsp, +, 4*rbx, +, 240]
+ jne LBB450_21
+ test rax, rax
+ je LBB450_24
+LBB450_23:
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 166]
+ movd xmm2, eax
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 164]
+ movd xmm3, eax
+ punpckldq xmm3, xmm2
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 162]
+ movd xmm2, eax
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 160]
+ movd xmm4, eax
+ punpckldq xmm4, xmm2
+ punpcklqdq xmm4, xmm3
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 174]
+ movd xmm2, eax
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 172]
+ movd xmm3, eax
+ punpckldq xmm3, xmm2
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 170]
+ movd xmm2, eax
+ movsx eax, word, ptr, [rsp, +, 2*rsi, +, 168]
+ movd xmm5, eax
+ punpckldq xmm5, xmm2
+ punpcklqdq xmm5, xmm3
+ pabsd xmm2, xmm5
+ pslld xmm2, 16
+ psrad xmm2, 16
paddd xmm1, xmm2
- pabsd xmm2, xmmword, ptr, [rsp, +, 4*rbx, +, 224]
+ pabsd xmm2, xmm4
+ pslld xmm2, 16
+ psrad xmm2, 16
paddd xmm0, xmm2
-LBB391_13:
+LBB450_24:
paddd xmm0, xmm1
pshufd xmm1, xmm0, 78
paddd xmm1, xmm0
pshufd xmm0, xmm1, 229
paddd xmm0, xmm1
- movd ebx, xmm0
- cmp rdx, r8
- mov r10d, 0
- je LBB391_16
- lea rdx, [rsp, +, 4*r8, +, 224]
-LBB391_15:
- mov esi, dword, ptr, [rdx]
- add rdx, 4
- mov edi, esi
- neg edi
- cmovl edi, esi
- add ebx, edi
- cmp rax, rdx
- jne LBB391_15
-LBB391_16:
- test ebx, ebx
- je LBB391_21
- xor edx, edx
- mov qword, ptr, [rsp, +, 48], rdx
- xor edx, edx
-LBB391_18:
- test rcx, rcx
- je LBB391_23
- inc rdx
- cmp dword, ptr, [rsp, +, rcx, +, 220], 0
- lea rcx, [rcx, -, 4]
- je LBB391_18
- lea rcx, [rsp, +, 224]
- sub rax, rcx
- shr rax, 2
- sub rax, rdx
- inc rax
- jmp LBB391_22
-LBB391_21:
- xor ebx, ebx
- xor eax, eax
-LBB391_22:
- mov qword, ptr, [rsp, +, 48], rax
-LBB391_23:
- mov qword, ptr, [rsp, +, 72], r14
- mov ecx, r11d
- lea rax, [rip, +, LJTI391_0]
- mov qword, ptr, [rsp, +, 40], rcx
- movsxd rdx, dword, ptr, [rax, +, 4*rcx]
- add rdx, rax
- mov ecx, r11d
+ movd edi, xmm0
+ cmp rcx, r9
+ je LBB450_28
+ lea rax, [rsp, +, 2*r9, +, 160]
+LBB450_26:
+ add rbx, rbx
+ lea rcx, [rsp, +, rbx, +, 160]
+LBB450_27:
+ movzx edx, word, ptr, [rax]
+ add rax, 2
+ mov esi, edx
+ neg si
+ cmovl si, dx
+ movsx edx, si
+ add edi, edx
+ cmp rcx, rax
+ jne LBB450_27
+LBB450_28:
+ mov dword, ptr, [rsp, +, 148], edi
+ mov eax, dword, ptr, [rbp, +, 48]
+ mov eax, eax
+ lea rcx, [rip, +, LJTI450_1]
+ movsxd rdx, dword, ptr, [rcx, +, 4*rax]
+ add rdx, rcx
+ mov ecx, 4
jmp rdx
-LBB391_24:
- mov r10d, 1
- mov eax, 1
- lea rcx, [rip, +, LJTI391_1]
- mov rdx, qword, ptr, [rsp, +, 40]
- movsxd rsi, dword, ptr, [rcx, +, 4*rdx]
- add rsi, rcx
- mov ecx, 1
- mov edx, 1
- jmp rsi
-LBB391_25:
- mov r10d, 2
- mov eax, 1
- lea rcx, [rip, +, LJTI391_1]
- mov rdx, qword, ptr, [rsp, +, 40]
- movsxd rsi, dword, ptr, [rcx, +, 4*rdx]
- add rsi, rcx
- mov ecx, 2
- mov edx, 2
- jmp rsi
-LBB391_26:
- mov r10d, 3
-LBB391_27:
- mov eax, 1
- lea rcx, [rip, +, LJTI391_1]
- mov rdx, qword, ptr, [rsp, +, 40]
- movsxd rsi, dword, ptr, [rcx, +, 4*rdx]
- add rsi, rcx
- mov ecx, r10d
- mov edx, r10d
- jmp rsi
-LBB391_28:
- mov eax, 2
- lea r10d, [r10, +, rax, +, 1]
- shr r10d
- lea eax, [r11, -, 1]
- movsxd rcx, r11d
- lea rdx, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.687]
- mov cl, byte, ptr, [rdx, +, 8*rcx, -, 8]
- mov r14d, 1
- shl r14, cl
- shr r14, 2
- mov ecx, 2
- lea rdx, [rip, +, LJTI391_2]
- movsxd rax, dword, ptr, [rdx, +, 4*rax]
- add rax, rdx
- jmp rax
-LBB391_29:
- mov eax, 4
- mov edx, ecx
-LBB391_30:
- lea r10d, [rdx, +, rax, +, 1]
- shr r10d
- lea eax, [r11, -, 1]
- movsxd rcx, r11d
- lea rdx, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.687]
- mov cl, byte, ptr, [rdx, +, 8*rcx, -, 8]
+LBB450_29:
mov r14d, 1
- shl r14, cl
- shr r14, 2
- mov ecx, 2
- lea rdx, [rip, +, LJTI391_2]
- movsxd rax, dword, ptr, [rdx, +, 4*rax]
- add rax, rdx
+ xor ebx, ebx
+ lea rcx, [rip, +, LJTI450_2]
+ movsxd rax, dword, ptr, [rcx, +, 4*rax]
+ add rax, rcx
+ mov ecx, 1
jmp rax
-LBB391_31:
- mov eax, 3
- lea r10d, [r10, +, rax, +, 1]
- shr r10d
- lea eax, [r11, -, 1]
- movsxd rcx, r11d
- lea rdx, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.687]
- mov cl, byte, ptr, [rdx, +, 8*rcx, -, 8]
- mov r14d, 1
- shl r14, cl
- shr r14, 2
+LBB450_30:
+ mov r14d, 2
+ xor ebx, ebx
+ lea rcx, [rip, +, LJTI450_2]
+ movsxd rax, dword, ptr, [rcx, +, 4*rax]
+ add rax, rcx
mov ecx, 2
- lea rdx, [rip, +, LJTI391_2]
- movsxd rax, dword, ptr, [rdx, +, 4*rax]
- add rax, rdx
jmp rax
-LBB391_32:
- mov ecx, 4
-LBB391_33:
- mov edi, 1
- shl rdi, cl
- cmp r12, 2
- ja LBB391_54
-LBB391_34:
- mov r8, qword, ptr, [rsp, +, 168]
- mov rcx, qword, ptr, [rbp, +, 64]
- shr r8, cl
- cmp r8, 1025
- jae LBB391_350
- mov qword, ptr, [rsp, +, 64], r10
- mov esi, 1024
- sub rsi, r8
- cmp rsi, r14
- jb LBB391_351
- mov r10, qword, ptr, [rsp, +, 176]
- and r10d, 15
- mov rcx, qword, ptr, [rbp, +, 72]
- shr r10, cl
- cmp r10, 17
- jae LBB391_352
- mov qword, ptr, [rsp, +, 208], rbx
- mov qword, ptr, [rsp, +, 136], r13
- shr rdi, 2
- mov esi, 16
- sub rsi, r10
- cmp rsi, rdi
- jb LBB391_353
- mov r13, r12
- shl r13, 10
- mov qword, ptr, [rsp, +, 16], r15
- add r13, r15
- lea r15, [r8, +, r13, +, 1572]
- xor eax, eax
- lea rdx, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.291]
- xor ebx, ebx
-LBB391_39:
- movzx esi, byte, ptr, [r15, +, rax]
- shr rsi, 6
- cmp sil, 3
- je LBB391_319
- movsx ecx, byte, ptr, [rsi, +, rdx]
- add ebx, ecx
- inc rax
- cmp r14, rax
- jne LBB391_39
- test rdi, rdi
- je LBB391_45
- mov rax, r12
- shl rax, 4
- add rax, qword, ptr, [rsp, +, 16]
- lea rax, [r10, +, rax, +, 4644]
- xor ecx, ecx
-LBB391_43:
- movzx esi, byte, ptr, [rax, +, rcx]
- shr rsi, 6
- cmp sil, 3
- je LBB391_320
- movsx esi, byte, ptr, [rsi, +, rdx]
- add ebx, esi
- inc rcx
- cmp rdi, rcx
- jne LBB391_43
-LBB391_45:
- add ebx, 32
- movsx rsi, bx
- cmp bx, 65
- jae LBB391_354
- test r12, r12
- mov qword, ptr, [rsp, +, 200], rsi
- je LBB391_49
- cmp r14, 32
- jae LBB391_51
- xor ebx, ebx
- jmp LBB391_66
-LBB391_49:
- lea rax, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.688]
- mov rcx, qword, ptr, [rsp, +, 40]
- cmp byte, ptr, [rcx, +, rax], r9b
- jne LBB391_56
- xor esi, esi
- mov r14d, dword, ptr, [rbp, +, 40]
- mov r15, qword, ptr, [rsp, +, 16]
- mov r8, qword, ptr, [rsp, +, 32]
- mov r10, qword, ptr, [rsp, +, 64]
- cmp r10, 4
- jbe LBB391_73
-LBB391_124:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.373]
- mov edx, 5
- mov rsi, r10
- call core::panicking::panic_bounds_check
-LBB391_51:
- mov r11, r14
- and r11, -32
- lea rax, [r11, -, 32]
- mov rdx, rax
- shr rdx, 5
- inc rdx
- mov ebx, edx
- and ebx, 3
- cmp rax, 96
- jae LBB391_59
- pxor xmm0, xmm0
- xor esi, esi
- pxor xmm1, xmm1
- test rbx, rbx
- jne LBB391_62
- jmp LBB391_64
-LBB391_53:
- mov ecx, 5
- mov edi, 1
- shl rdi, cl
- cmp r12, 2
- jbe LBB391_34
-LBB391_54:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.290]
- mov edx, 3
- mov rsi, r12
- call core::panicking::panic_bounds_check
-LBB391_55:
- mov ecx, 3
- mov edi, 1
- shl rdi, cl
- cmp r12, 2
- jbe LBB391_34
- jmp LBB391_54
-LBB391_56:
- cmp r14, 32
- jae LBB391_105
+LBB450_31:
+ mov r14d, 3
+LBB450_32:
xor ebx, ebx
- jmp LBB391_116
-LBB391_58:
- mov ecx, 6
- mov edi, 1
- shl rdi, cl
- cmp r12, 2
- jbe LBB391_34
- jmp LBB391_54
-LBB391_59:
- sub rdx, rbx
- lea rax, [r8, +, r13, +, 1684]
- pxor xmm0, xmm0
- xor esi, esi
- pxor xmm1, xmm1
-LBB391_60:
- movdqu xmm2, xmmword, ptr, [rax, +, rsi, -, 112]
- por xmm2, xmm0
- movdqu xmm0, xmmword, ptr, [rax, +, rsi, -, 96]
- por xmm0, xmm1
- movdqu xmm1, xmmword, ptr, [rax, +, rsi, -, 80]
- movdqu xmm3, xmmword, ptr, [rax, +, rsi, -, 64]
- movdqu xmm4, xmmword, ptr, [rax, +, rsi, -, 48]
- por xmm4, xmm1
- por xmm4, xmm2
- movdqu xmm2, xmmword, ptr, [rax, +, rsi, -, 32]
- por xmm2, xmm3
- por xmm2, xmm0
- movdqu xmm0, xmmword, ptr, [rax, +, rsi, -, 16]
- por xmm0, xmm4
- movdqu xmm1, xmmword, ptr, [rax, +, rsi]
- por xmm1, xmm2
- sub rsi, -128
- add rdx, -4
- jne LBB391_60
- test rbx, rbx
- je LBB391_64
-LBB391_62:
- add rsi, r8
- lea rax, [r13, +, rsi, +, 1588]
- neg rbx
-LBB391_63:
- movdqu xmm2, xmmword, ptr, [rax, -, 16]
- por xmm0, xmm2
- movdqu xmm2, xmmword, ptr, [rax]
- por xmm1, xmm2
- add rax, 32
- inc rbx
- jne LBB391_63
-LBB391_64:
- por xmm0, xmm1
- pshufd xmm1, xmm0, 78
- por xmm1, xmm0
- pshufd xmm0, xmm1, 229
- por xmm0, xmm1
- movdqa xmm1, xmm0
- psrld xmm1, 16
- por xmm1, xmm0
- movdqa xmm0, xmm1
- psrlw xmm0, 8
- por xmm0, xmm1
- movd ebx, xmm0
- cmp r14, r11
- je LBB391_68
- add r15, r11
-LBB391_66:
- add r14, r8
- sub r14, r15
- lea rax, [r14, +, r13, +, 1572]
- xor ecx, ecx
-LBB391_67:
- or bl, byte, ptr, [r15, +, rcx]
- inc rcx
- cmp rax, rcx
- jne LBB391_67
-LBB391_68:
- test rdi, rdi
- mov r8, qword, ptr, [rsp, +, 32]
- je LBB391_79
- mov rax, r12
- shl rax, 4
- mov r15, qword, ptr, [rsp, +, 16]
- add rax, r15
- lea rax, [r10, +, rax, +, 4644]
- xor ecx, ecx
- xor edx, edx
- mov r14d, dword, ptr, [rbp, +, 40]
-LBB391_70:
- or dl, byte, ptr, [rax, +, rcx]
- inc rcx
- cmp rdi, rcx
- jne LBB391_70
- xor eax, eax
- test dl, dl
- setne al
- mov r10, qword, ptr, [rsp, +, 64]
- movzx esi, r9b
- cmp sil, 22
- jae LBB391_80
-LBB391_72:
- cmp bl, 1
- sbb rax, -1
- lea rcx, [rip, +, __ZN5rav1e7context20num_pels_log2_lookup17h34d5cbe6e79c1d27E]
- mov dl, byte, ptr, [rsi, +, rcx]
- lea rsi, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.689]
- mov rdi, qword, ptr, [rsp, +, 40]
- mov rsi, qword, ptr, [rsi, +, 8*rdi]
- xor edi, edi
- cmp dl, byte, ptr, [rsi, +, rcx]
- seta dil
- lea rcx, [rdi, +, 2*rdi]
- lea rsi, [rax, +, rcx, +, 7]
- cmp r10, 4
- ja LBB391_124
-LBB391_73:
- cmp rsi, 12
- ja LBB391_355
- imul rax, r10, 78
- add rax, qword, ptr, [r15, +, 4696]
- lea rcx, [rsi, +, 2*rsi]
- lea rdx, [rax, +, 2*rcx, +, 9420]
+ lea rcx, [rip, +, LJTI450_2]
+ movsxd rax, dword, ptr, [rcx, +, 4*rax]
+ add rax, rcx
+ mov ecx, r14d
+ jmp rax
+LBB450_34:
+ mov ebx, 2
+ jmp LBB450_37
+LBB450_36:
+ mov r14d, ecx
+ mov ebx, 4
+ jmp LBB450_37
+LBB450_35:
+ mov ebx, 3
+ jmp LBB450_37
+LBB450_33:
+ mov ebx, 1
+LBB450_37:
+ mov rax, qword, ptr, [rbp, +, 80]
+ mov qword, ptr, [rsp, +, 8], rax
+ mov rax, qword, ptr, [rbp, +, 72]
+ mov qword, ptr, [rsp], rax
+ movzx esi, r8b
+ mov rdi, qword, ptr, [rsp, +, 24]
+ mov edx, dword, ptr, [rbp, +, 48]
+ mov rcx, qword, ptr, [rsp, +, 64]
+ mov r8, qword, ptr, [rsp, +, 112]
+ mov r9, qword, ptr, [rsp, +, 120]
+ call rav1e::context::BlockContext::get_txb_ctx
+ mov qword, ptr, [rsp, +, 152], rdx
+ cmp rax, 12
+ ja LBB450_150
+ lea ecx, [r14, +, rbx, +, 1]
+ shr ecx
+ mov qword, ptr, [rsp, +, 88], rcx
+ imul rcx, rcx, 78
+ mov rdx, qword, ptr, [rsp, +, 24]
+ add rcx, qword, ptr, [rdx, +, 4696]
+ lea rax, [rax, +, 2*rax]
+ lea rdx, [rcx, +, 2*rax, +, 9684]
xor esi, esi
- mov rax, qword, ptr, [rsp, +, 48]
- mov rbx, rax
- test rax, rax
+ cmp qword, ptr, [rbp, +, 32], 0
sete sil
- mov rax, qword, ptr, [rsp, +, 112]
+ mov rax, qword, ptr, [rsp, +, 56]
mov rax, qword, ptr, [rax, +, 40]
mov ecx, 3
- mov rdi, r8
- mov qword, ptr, [rsp, +, 80], rax
+ mov rdi, qword, ptr, [rsp, +, 40]
+ mov qword, ptr, [rsp, +, 48], rax
call rax
- test rbx, rbx
- je LBB391_78
- lea rdi, [rsp, +, 4344]
- mov esi, 4776
+ cmp qword, ptr, [rbp, +, 32], 0
+ je LBB450_43
+ lea rdi, [rsp, +, 2264]
+ mov ebx, 1384
+ mov esi, 1384
call ___bzero
- mov r8d, 4776
- mov r15, qword, ptr, [rsp, +, 56]
- lea rax, [r15, +, r15, +, 8]
- sub r8, rax
- mov rdx, qword, ptr, [rbp, +, 24]
- test rdx, rdx
- je LBB391_81
- mov rsi, rdx
- mov r14, qword, ptr, [rsp, +, 72]
- mov ecx, r14d
- shr rsi, cl
- lea rax, [r15, -, 1]
- and rax, rdx
+ mov r9, qword, ptr, [rsp, +, 72]
+ lea rdi, [r9, +, r9, +, 8]
+ cmp rdi, 1385
+ jae LBB450_42
+ sub rbx, rdi
+ test r15, r15
+ mov qword, ptr, [rsp, +, 104], rbx
+ mov r8, qword, ptr, [rsp, +, 80]
+ je LBB450_49
+ mov rdx, r15
+ mov ecx, r8d
+ shr rdx, cl
+ lea rax, [r9, -, 1]
+ and rax, r15
cmp rax, 1
- sbb rsi, -1
- mov qword, ptr, [rsp, +, 160], r12
- lea r11, [r15, +, 4]
- test r8, r8
- je LBB391_82
-LBB391_77:
- mov rax, r8
+ mov rax, qword, ptr, [rsp, +, 104]
+ sbb rdx, -1
+ mov rsi, rdx
+ lea r11, [r9, +, 4]
+ mov r10, r13
+ test rax, rax
+ je LBB450_52
+LBB450_53:
xor edx, edx
div r11
cmp rdx, 1
sbb rax, -1
- jmp LBB391_83
-LBB391_78:
- mov rdi, r15
- mov rsi, r12
- mov rdx, qword, ptr, [rsp, +, 168]
- mov rcx, qword, ptr, [rsp, +, 176]
- mov r8d, r14d
- mov r9, qword, ptr, [rbp, +, 64]
- push 0
- push qword, ptr, [rbp, +, 72]
+ jmp LBB450_54
+LBB450_43:
+ mov rax, qword, ptr, [rbp, +, 80]
+ mov qword, ptr, [rsp], rax
+ mov dword, ptr, [rsp, +, 8], 0
+ mov rdi, qword, ptr, [rsp, +, 24]
+ mov rsi, qword, ptr, [rsp, +, 64]
+ mov rdx, qword, ptr, [rsp, +, 112]
+ mov rcx, qword, ptr, [rsp, +, 120]
+ mov r8d, dword, ptr, [rbp, +, 48]
+ mov r9, qword, ptr, [rbp, +, 72]
call rav1e::context::BlockContext::set_coeff_context
- add rsp, 16
+ cmp word, ptr, [rsp, +, 2208], 0
+ je LBB450_46
+ mov word, ptr, [rsp, +, 2208], 0
+LBB450_46:
xor eax, eax
- jmp LBB391_318
-LBB391_79:
- xor eax, eax
- mov r14d, dword, ptr, [rbp, +, 40]
- mov r15, qword, ptr, [rsp, +, 16]
- mov r10, qword, ptr, [rsp, +, 64]
- movzx esi, r9b
- cmp sil, 22
- jb LBB391_72
-LBB391_80:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.297]
- mov edx, 22
- call core::panicking::panic_bounds_check
-LBB391_81:
+ jmp LBB450_47
+LBB450_49:
+ mov rax, rbx
xor esi, esi
- mov r14, qword, ptr, [rsp, +, 72]
- mov qword, ptr, [rsp, +, 160], r12
- lea r11, [r15, +, 4]
- test r8, r8
- jne LBB391_77
-LBB391_82:
+ lea r11, [r9, +, 4]
+ mov r10, r13
+ test rax, rax
+ jne LBB450_53
+LBB450_52:
xor eax, eax
-LBB391_83:
- lea rcx, [rsp, +, 2*r15, +, 4352]
+LBB450_54:
+ lea rcx, [rsp, +, rdi, +, 2264]
mov qword, ptr, [rsp, +, 96], rcx
cmp rsi, rax
cmova rsi, rax
- mov qword, ptr, [rsp, +, 24], rsi
+ mov qword, ptr, [rsp, +, 32], rsi
test rsi, rsi
- mov qword, ptr, [rsp, +, 144], r8
- je LBB391_101
- movabs rcx, 4611686018427387872
- lea rdx, [rsp, +, 2*r15, +, 4356]
- mov rax, qword, ptr, [rbp, +, 16]
- add rax, 16
- mov qword, ptr, [rsp, +, 88], rax
- xor r9d, r9d
- add rcx, 28
+ je LBB450_72
+ lea rax, [rsp, +, rdi, +, 2272]
+ lea rcx, [r10, +, 16]
mov qword, ptr, [rsp, +, 128], rcx
+ xor r14d, r14d
pxor xmm0, xmm0
- movdqa xmm1, xmmword, ptr, [rip, +, LCPI391_0]
- movdqa xmm2, xmmword, ptr, [rip, +, LCPI391_1]
- mov rbx, qword, ptr, [rsp, +, 96]
- jmp LBB391_86
-LBB391_85:
- add rdx, r11
- add rbx, r11
- cmp r9, qword, ptr, [rsp, +, 24]
- jae LBB391_101
-LBB391_86:
- mov r13, r9
- imul r13, r11
- lea r12, [r13, +, r11]
- cmp r12, r8
- cmova r12, r8
- mov rax, r13
+ movdqa xmm1, xmmword, ptr, [rip, +, LCPI450_0]
+ mov rdx, qword, ptr, [rsp, +, 96]
+ jmp LBB450_57
+LBB450_56:
add rax, r11
- cmovb r12, r8
- mov rax, r9
- mov ecx, r14d
- shl rax, cl
- lea rsi, [rax, +, r15]
+ add rdx, r11
+ cmp r14, qword, ptr, [rsp, +, 32]
+ jae LBB450_72
+LBB450_57:
+ mov r15, r14
+ imul r15, r11
+ lea r13, [r15, +, r11]
+ mov rsi, qword, ptr, [rsp, +, 104]
+ cmp r13, rsi
+ cmova r13, rsi
+ mov rcx, r15
+ add rcx, r11
+ cmovb r13, rsi
+ mov rdi, r14
+ mov ecx, r8d
+ shl rdi, cl
+ lea rsi, [rdi, +, r9]
mov rcx, qword, ptr, [rbp, +, 24]
- mov rdi, rcx
+ mov rbx, rcx
cmp rsi, rcx
cmova rsi, rcx
- mov rcx, rax
- add rcx, r15
- cmovb rsi, rdi
- inc r9
- mov r10, qword, ptr, [rbp, +, 16]
- lea rcx, [r10, +, 4*rax]
- mov rdi, qword, ptr, [rsp, +, 96]
- add r13, rdi
- lea rsi, [r10, +, 4*rsi]
- add r12, rdi
+ mov rcx, rdi
+ add rcx, r9
+ cmovb rsi, rbx
+ inc r14
+ mov rbx, r10
+ lea rcx, [r10, +, 2*rdi]
+ mov r12, qword, ptr, [rsp, +, 96]
+ add r15, r12
+ lea rsi, [r10, +, 2*rsi]
+ add r13, r12
sub rsi, rcx
- shr rsi, 2
- sub r12, r13
- cmp rsi, r12
- cmovbe r12, rsi
- test r12, r12
- je LBB391_85
- cmp r12, 4
- jae LBB391_89
- xor edi, edi
- jmp LBB391_96
-LBB391_89:
- mov rdi, r12
- and rdi, qword, ptr, [rsp, +, 128]
- lea rsi, [rdi, -, 4]
- mov r15, rsi
- shr r15, 2
- inc r15
- mov r14d, r15d
- and r14d, 1
- test rsi, rsi
- je LBB391_100
- sub r15, r14
- mov rsi, qword, ptr, [rsp, +, 88]
- lea rax, [rsi, +, 4*rax]
- xor r8d, r8d
-LBB391_91:
- movdqu xmm3, xmmword, ptr, [rax, +, 4*r8, -, 16]
- pabsd xmm3, xmm3
- movdqa xmm4, xmm1
- pcmpgtd xmm4, xmm3
- pand xmm3, xmm4
- pandn xmm4, xmm1
- por xmm4, xmm3
- movdqa xmm3, xmm4
- pcmpgtd xmm3, xmm0
- pand xmm3, xmm4
- pshufb xmm3, xmm2
- movd dword, ptr, [rdx, +, r8, -, 4], xmm3
- movdqu xmm3, xmmword, ptr, [rax, +, 4*r8]
- pabsd xmm3, xmm3
- movdqa xmm4, xmm1
- pcmpgtd xmm4, xmm3
- pand xmm3, xmm4
- pandn xmm4, xmm1
- por xmm4, xmm3
- movdqa xmm3, xmm4
- pcmpgtd xmm3, xmm0
- pand xmm3, xmm4
- pshufb xmm3, xmm2
- movd dword, ptr, [rdx, +, r8], xmm3
- add r8, 8
- add r15, -2
- jne LBB391_91
- test r14, r14
- je LBB391_94
-LBB391_93:
- movdqu xmm3, xmmword, ptr, [rcx, +, 4*r8]
- pabsd xmm3, xmm3
- movdqa xmm4, xmm1
- pcmpgtd xmm4, xmm3
- pand xmm3, xmm4
- pandn xmm4, xmm1
- por xmm4, xmm3
- movdqa xmm3, xmm4
- pcmpgtd xmm3, xmm0
- pand xmm3, xmm4
- pshufb xmm3, xmm2
- movd dword, ptr, [r13, +, r8], xmm3
-LBB391_94:
- cmp r12, rdi
- mov r8, qword, ptr, [rsp, +, 144]
- mov r14, qword, ptr, [rsp, +, 72]
- mov r15, qword, ptr, [rsp, +, 56]
- jne LBB391_96
- jmp LBB391_85
-LBB391_95:
- mov byte, ptr, [rbx, +, rdi], al
- mov rdi, rsi
- cmp rsi, r12
- jae LBB391_85
-LBB391_96:
- mov esi, dword, ptr, [rcx, +, 4*rdi]
- mov eax, esi
- neg eax
- cmovl eax, esi
- cmp eax, 128
- jl LBB391_98
- mov eax, 127
-LBB391_98:
- lea rsi, [rdi, +, 1]
- test eax, eax
- jg LBB391_95
- xor eax, eax
- jmp LBB391_95
-LBB391_100:
- xor r8d, r8d
- test r14, r14
- jne LBB391_93
- jmp LBB391_94
-LBB391_101:
- xor eax, eax
- mov qword, ptr, [rsp, +, 24], rax
- cmp qword, ptr, [rsp, +, 160], 0
- setne r15b
- mov r13, qword, ptr, [rsp, +, 136]
- jne LBB391_144
- mov rax, qword, ptr, [rsp, +, 16]
- mov r9, qword, ptr, [rax, +, 4696]
- xor r10d, r10d
- lea rax, [rip, +, LJTI391_3]
- mov rcx, qword, ptr, [rsp, +, 40]
- movsxd rdx, dword, ptr, [rax, +, 4*rcx]
- add rdx, rax
- mov ecx, dword, ptr, [rbp, +, 40]
- mov eax, ecx
- jmp rdx
-LBB391_103:
- mov r10d, 1
- mov esi, 1
- lea rax, [rip, +, LJTI391_4]
- mov rdx, qword, ptr, [rsp, +, 40]
- movsxd rdx, dword, ptr, [rax, +, 4*rdx]
- add rdx, rax
- mov eax, 1
- mov edi, ecx
- jmp rdx
-LBB391_104:
- pxor xmm0, xmm0
+ shr rsi
+ sub r13, r15
+ cmp rsi, r13
+ cmovbe r13, rsi
+ test r13, r13
+ je LBB450_56
+ cmp r13, 8
+ jae LBB450_60
xor ebx, ebx
- pxor xmm1, xmm1
- test r10, r10
- jne LBB391_12
- jmp LBB391_13
-LBB391_105:
- mov r9, r14
- and r9, -32
- lea rax, [r9, -, 32]
- mov rdx, rax
- shr rdx, 5
- inc rdx
- mov ebx, edx
- and ebx, 3
- cmp rax, 96
- jae LBB391_109
- pxor xmm0, xmm0
- xor esi, esi
- pxor xmm1, xmm1
- test rbx, rbx
- jne LBB391_112
- jmp LBB391_114
-LBB391_107:
- mov r10d, 2
- mov esi, 1
- lea rax, [rip, +, LJTI391_4]
- mov rdx, qword, ptr, [rsp, +, 40]
- movsxd rdx, dword, ptr, [rax, +, 4*rdx]
- add rdx, rax
- mov eax, 2
- mov edi, ecx
- jmp rdx
-LBB391_108:
- inc r10d
- shr r10d
- mov ecx, 2
- mov r14d, 1
- mov edi, 1
- shl rdi, cl
- cmp r12, 2
- jbe LBB391_34
- jmp LBB391_54
-LBB391_109:
- sub rdx, rbx
- lea rax, [r8, +, r13, +, 1684]
- pxor xmm0, xmm0
- xor esi, esi
- pxor xmm1, xmm1
-LBB391_110:
- movdqu xmm2, xmmword, ptr, [rax, +, rsi, -, 112]
- por xmm2, xmm0
- movdqu xmm0, xmmword, ptr, [rax, +, rsi, -, 96]
- por xmm0, xmm1
- movdqu xmm1, xmmword, ptr, [rax, +, rsi, -, 80]
- movdqu xmm3, xmmword, ptr, [rax, +, rsi, -, 64]
- movdqu xmm4, xmmword, ptr, [rax, +, rsi, -, 48]
- por xmm4, xmm1
- por xmm4, xmm2
- movdqu xmm2, xmmword, ptr, [rax, +, rsi, -, 32]
- por xmm2, xmm3
- por xmm2, xmm0
- movdqu xmm0, xmmword, ptr, [rax, +, rsi, -, 16]
- por xmm0, xmm4
- movdqu xmm1, xmmword, ptr, [rax, +, rsi]
- por xmm1, xmm2
- sub rsi, -128
- add rdx, -4
- jne LBB391_110
- test rbx, rbx
- je LBB391_114
-LBB391_112:
- add rsi, r8
- lea rax, [r13, +, rsi, +, 1588]
- neg rbx
-LBB391_113:
- movdqu xmm2, xmmword, ptr, [rax, -, 16]
- por xmm0, xmm2
- movdqu xmm2, xmmword, ptr, [rax]
- por xmm1, xmm2
- add rax, 32
- inc rbx
- jne LBB391_113
-LBB391_114:
- por xmm0, xmm1
- pshufd xmm1, xmm0, 78
- por xmm1, xmm0
- pshufd xmm0, xmm1, 229
- por xmm0, xmm1
- movdqa xmm1, xmm0
- psrld xmm1, 16
- por xmm1, xmm0
- movdqa xmm0, xmm1
- psrlw xmm0, 8
- por xmm0, xmm1
- movd ebx, xmm0
- cmp r14, r9
- je LBB391_118
- add r15, r9
-LBB391_116:
- add r14, r8
- sub r14, r15
- lea rax, [r14, +, r13, +, 1572]
- xor ecx, ecx
-LBB391_117:
- or bl, byte, ptr, [r15, +, rcx]
- inc rcx
- cmp rax, rcx
- jne LBB391_117
-LBB391_118:
- and bl, 63
- test rdi, rdi
- mov r8, qword, ptr, [rsp, +, 32]
- je LBB391_122
- mov rax, r12
- shl rax, 4
- mov r15, qword, ptr, [rsp, +, 16]
- add rax, r15
- lea rcx, [r10, +, rax, +, 4644]
- xor edx, edx
- xor eax, eax
- mov r14d, dword, ptr, [rbp, +, 40]
-LBB391_120:
- or al, byte, ptr, [rcx, +, rdx]
- inc rdx
- cmp rdi, rdx
- jne LBB391_120
- and al, 63
- jmp LBB391_123
-LBB391_122:
- xor eax, eax
- mov r14d, dword, ptr, [rbp, +, 40]
- mov r15, qword, ptr, [rsp, +, 16]
-LBB391_123:
- mov r10, qword, ptr, [rsp, +, 64]
- mov ecx, eax
- or cl, bl
- cmp cl, 4
- movzx ecx, cl
- mov edx, 4
- cmovae ecx, edx
- cmp bl, al
- movzx eax, al
- movzx esi, bl
- cmova esi, eax
- cmp sil, 4
- cmovae esi, edx
- movzx eax, sil
- movzx ecx, cl
- lea rax, [rax, +, 4*rax]
- lea rdx, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.296]
- add rdx, rax
- movzx esi, byte, ptr, [rcx, +, rdx]
- cmp r10, 4
- jbe LBB391_73
- jmp LBB391_124
-LBB391_125:
- mov r10d, 3
-LBB391_126:
- mov esi, 1
- lea rax, [rip, +, LJTI391_4]
- mov rdx, qword, ptr, [rsp, +, 40]
- movsxd rdx, dword, ptr, [rax, +, 4*rdx]
- add rdx, rax
- mov eax, r10d
- mov edi, ecx
- jmp rdx
-LBB391_127:
- mov esi, 2
+ jmp LBB450_67
+LBB450_60:
+ mov rbx, r13
+ movabs rsi, 9223372036854775800
+ and rbx, rsi
+ lea rsi, [rbx, -, 8]
+ mov r12, rsi
+ shr r12, 3
+ inc r12
+ mov r8d, r12d
+ and r8d, 1
+ test rsi, rsi
+ je LBB450_61
+ sub r12, r8
+ mov rsi, qword, ptr, [rsp, +, 128]
+ lea r9, [rsi, +, 2*rdi]
xor edi, edi
- lea eax, [rcx, -, 1]
- lea rdx, [rip, +, LJTI391_5]
- movsxd rbx, dword, ptr, [rdx, +, 4*rax]
- add rbx, rdx
- xor eax, eax
- jmp rbx
-LBB391_128:
- mov esi, 4
- mov r10d, eax
-LBB391_129:
+LBB450_63:
+ movdqu xmm2, xmmword, ptr, [r9, +, 2*rdi, -, 16]
+ pabsw xmm2, xmm2
+ pminsw xmm2, xmm1
+ pmaxsw xmm2, xmm0
+ packuswb xmm2, xmm0
+ movq qword, ptr, [rax, +, rdi, -, 8], xmm2
+ movdqu xmm2, xmmword, ptr, [r9, +, 2*rdi]
+ pabsw xmm2, xmm2
+ pminsw xmm2, xmm1
+ pmaxsw xmm2, xmm0
+ packuswb xmm2, xmm0
+ movq qword, ptr, [rax, +, rdi], xmm2
+ add rdi, 16
+ add r12, -2
+ jne LBB450_63
+ test r8, r8
+ je LBB450_66
+LBB450_65:
+ movdqu xmm2, xmmword, ptr, [rcx, +, 2*rdi]
+ pabsw xmm2, xmm2
+ pminsw xmm2, xmm1
+ pmaxsw xmm2, xmm0
+ packuswb xmm2, xmm0
+ movq qword, ptr, [r15, +, rdi], xmm2
+LBB450_66:
+ cmp r13, rbx
+ mov r8, qword, ptr, [rsp, +, 80]
+ mov r9, qword, ptr, [rsp, +, 72]
+ jne LBB450_67
+ jmp LBB450_56
+LBB450_71:
+ mov byte, ptr, [rdx, +, rbx], dil
+ mov rbx, rsi
+ cmp rsi, r13
+ jae LBB450_56
+LBB450_67:
+ movzx esi, word, ptr, [rcx, +, 2*rbx]
+ mov edi, esi
+ neg di
+ cmovl di, si
+ movsx esi, di
+ cmp esi, 128
+ jl LBB450_69
+ mov edi, 127
+LBB450_69:
+ lea rsi, [rbx, +, 1]
+ test di, di
+ jg LBB450_71
xor edi, edi
- lea eax, [rcx, -, 1]
- lea rdx, [rip, +, LJTI391_5]
- movsxd rbx, dword, ptr, [rdx, +, 4*rax]
- add rbx, rdx
- xor eax, eax
- jmp rbx
-LBB391_130:
- mov esi, 3
+ jmp LBB450_71
+LBB450_61:
xor edi, edi
- lea eax, [rcx, -, 1]
- lea rdx, [rip, +, LJTI391_5]
- movsxd rbx, dword, ptr, [rdx, +, 4*rax]
- add rbx, rdx
+ test r8, r8
+ jne LBB450_65
+ jmp LBB450_66
+LBB450_72:
xor eax, eax
- jmp rbx
-LBB391_131:
- mov edi, 1
- mov ecx, dword, ptr, [rbp, +, 40]
- cmp ecx, 18
- ja LBB391_356
-LBB391_134:
- mov eax, 258030
- bt eax, ecx
- jae LBB391_149
- cmp ecx, 17
- ja LBB391_356
- mov eax, 129006
- bt eax, ecx
- jae LBB391_151
- cmp esi, 3
- jne LBB391_142
+ mov qword, ptr, [rsp, +, 32], rax
+ cmp qword, ptr, [rsp, +, 64], 0
+ setne bl
+ jne LBB450_74
xor eax, eax
- cmp byte, ptr, [rbp, +, 32], 13
+ mov cl, byte, ptr, [rbp, +, 40]
+ mov edx, ecx
+ cmp cl, 13
seta al
-LBB391_139:
- lea rdx, [rip, +, __ZN5rav1e7context10num_tx_set17hf7bcec8c7d74e8d9E]
- mov rdi, qword, ptr, [rdx, +, 8*rax]
- cmp rdi, 2
- jb LBB391_144
-LBB391_140:
- mov esi, 1
- lea rdx, [rip, +, LJTI391_6]
- mov rcx, qword, ptr, [rsp, +, 40]
- movsxd rcx, dword, ptr, [rdx, +, 4*rcx]
- add rcx, rdx
- mov ebx, dword, ptr, [rbp, +, 40]
- jmp rcx
-LBB391_141:
- mov esi, 2
- xor ebx, ebx
- mov ecx, dword, ptr, [rbp, +, 40]
- dec ecx
- lea rdx, [rip, +, LJTI391_7]
- movsxd rcx, dword, ptr, [rdx, +, 4*rcx]
- add rcx, rdx
- xor edx, edx
- jmp rcx
-LBB391_142:
- cmp byte, ptr, [rbp, +, 80], 0
- je LBB391_146
- xor edx, edx
- cmp byte, ptr, [rbp, +, 32], 13
- seta dl
- mov eax, 2
- sub rax, rdx
- lea rdx, [rip, +, __ZN5rav1e7context10num_tx_set17hf7bcec8c7d74e8d9E]
- mov rdi, qword, ptr, [rdx, +, 8*rax]
- cmp rdi, 2
- jae LBB391_140
-LBB391_144:
- mov rdx, qword, ptr, [rsp, +, 48]
- cmp rdx, 32
- ja LBB391_190
-LBB391_145:
- lea rax, [rip, +, __ZN5rav1e7context16eob_to_pos_small17hf269a7b2eb0b7e96E]
- add rax, rdx
+ mov rcx, qword, ptr, [rsp, +, 24]
+ mov rdi, qword, ptr, [rcx, +, 4696]
+ movzx ecx, byte, ptr, [rbp, +, 88]
+ mov dword, ptr, [rsp, +, 8], ecx
+ mov dword, ptr, [rsp], eax
+ movzx r9d, dl
+ mov rsi, qword, ptr, [rsp, +, 40]
+ mov rdx, qword, ptr, [rsp, +, 56]
mov ecx, dword, ptr, [rbp, +, 48]
- movzx r12d, byte, ptr, [rax]
- cmp r12, 11
- ja LBB391_357
-LBB391_191:
- lea rax, [rip, +, __ZN5rav1e7context17k_eob_group_start17hfd1ca0314149b4e6E]
- movzx eax, word, ptr, [rax, +, 2*r12]
- mov r14d, edx
- sub r14d, eax
- jl LBB391_358
- lea rax, [rip, +, __ZN5rav1e7context16tx_type_to_class17hb942ea8ee6c27410E]
- movzx esi, byte, ptr, [rcx, +, rax]
- mov qword, ptr, [rsp, +, 56], rsi
- mov rax, qword, ptr, [rsp, +, 24]
- mov al, r15b
- mov qword, ptr, [rsp, +, 24], rax
- lea rax, [rip, +, l_switch.table._ZN5rav1e11recon_intra13has_top_right17hd611e5b0d5b786abE]
- mov rdx, qword, ptr, [rsp, +, 40]
- mov rcx, qword, ptr, [rax, +, 8*rdx]
- lea rax, [rip, +, l_switch.table._ZN5rav1e11recon_intra15has_bottom_left17h03b44d91be520c02E.700]
+ mov r8d, dword, ptr, [rbp, +, 56]
+ call rav1e::context::ContextWriter::write_tx_type
+LBB450_74:
+ mov rcx, qword, ptr, [rbp, +, 32]
+ cmp rcx, 32
+ ja LBB450_76
+ lea rax, [rip, +, __ZN5rav1e7context16eob_to_pos_small17h9f9ede2af4c3bc3bE]
+ add rax, rcx
+ movzx r13d, byte, ptr, [rax]
+ cmp r13, 11
+ jbe LBB450_78
+ jmp LBB450_80
+LBB450_76:
+ lea rax, [rcx, -, 1]
+ shr rax, 5
+ cmp rax, 16
+ mov ecx, 16
+ cmovb rcx, rax
+ lea rax, [rip, +, __ZN5rav1e7context16eob_to_pos_large17h2ef90ca5b8744c25E]
+ add rax, rcx
+ movzx r13d, byte, ptr, [rax]
+ cmp r13, 11
+ ja LBB450_80
+LBB450_78:
+ lea rax, [rip, +, __ZN5rav1e7context17k_eob_group_start17hd67355ca4232743aE]
+ movzx eax, word, ptr, [rax, +, 2*r13]
+ mov rcx, qword, ptr, [rbp, +, 32]
+ mov r15d, ecx
+ sub r15d, eax
+ jl LBB450_79
+ lea rax, [rip, +, __ZN5rav1e7context16tx_type_to_class17h8f404053ca2fa745E]
+ mov rcx, qword, ptr, [rsp, +, 32]
+ mov cl, bl
+ mov qword, ptr, [rsp, +, 32], rcx
+ mov ecx, dword, ptr, [rbp, +, 56]
+ mov r14b, byte, ptr, [rcx, +, rax]
+ lea rax, [rip, +, l_switch.table._ZN5rav1e11recon_intra13has_top_right17h7d540b674c01df1dE]
+ mov ecx, dword, ptr, [rbp, +, 48]
+ mov rdx, rcx
+ mov rcx, qword, ptr, [rax, +, 8*rcx]
+ lea rax, [rip, +, l_switch.table._ZN5rav1e11recon_intra15has_bottom_left17h257f618759d00753E.430]
mov rdx, qword, ptr, [rax, +, 8*rdx]
xor eax, eax
- test sil, sil
+ test r14b, r14b
setne al
- lea esi, [r12, -, 1]
+ lea esi, [r13, -, 1]
lea rcx, [rdx, +, rcx, -, 4]
cmp rcx, 5
- ja LBB391_200
- lea rdx, [rip, +, LJTI391_8]
+ ja LBB450_89
+ lea rdx, [rip, +, LJTI450_3]
movsxd rcx, dword, ptr, [rdx, +, 4*rcx]
add rcx, rdx
jmp rcx
-LBB391_194:
- mov rcx, qword, ptr, [rsp, +, 24]
+LBB450_83:
+ mov rcx, qword, ptr, [rsp, +, 32]
lea rcx, [rcx, +, 2*rcx]
shl rcx, 3
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
lea rax, [rax, +, 2*rax]
- lea rdx, [rcx, +, 4*rax, +, 10386]
+ lea rdx, [rcx, +, 4*rax, +, 10650]
mov ecx, 6
- jmp LBB391_201
-LBB391_195:
- mov rcx, qword, ptr, [rsp, +, 24]
+ jmp LBB450_90
+LBB450_19:
+ pxor xmm0, xmm0
+ xor esi, esi
+ pxor xmm1, xmm1
+ test rax, rax
+ jne LBB450_23
+ jmp LBB450_24
+LBB450_87:
+ mov rcx, qword, ptr, [rsp, +, 32]
lea rcx, [rcx, +, 4*rcx]
shl rcx, 3
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
lea rax, [rax, +, 4*rax]
- lea rdx, [rcx, +, 4*rax, +, 10626]
+ lea rdx, [rcx, +, 4*rax, +, 10890]
mov ecx, 10
- jmp LBB391_201
-LBB391_196:
- mov rcx, qword, ptr, [rsp, +, 24]
+ jmp LBB450_90
+LBB450_85:
+ mov rcx, qword, ptr, [rsp, +, 32]
shl rcx, 5
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
shl rax, 4
- lea rdx, [rax, +, rcx, +, 10490]
+ lea rdx, [rax, +, rcx, +, 10754]
mov ecx, 8
- jmp LBB391_201
-LBB391_197:
- mov rcx, qword, ptr, [rsp, +, 24]
+ jmp LBB450_90
+LBB450_86:
+ mov rcx, qword, ptr, [rsp, +, 32]
lea rcx, [rcx, +, 8*rcx]
shl rcx, 2
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
lea rax, [rax, +, 8*rax]
- lea rdx, [rcx, +, 2*rax, +, 10554]
+ lea rdx, [rcx, +, 2*rax, +, 10818]
mov ecx, 9
- jmp LBB391_201
-LBB391_198:
+ jmp LBB450_90
+LBB450_84:
mov rcx, rax
shl rcx, 4
sub rcx, rax
sub rcx, rax
- mov rdx, qword, ptr, [rsp, +, 24]
+ mov rdx, qword, ptr, [rsp, +, 32]
lea rax, [rdx, +, 8*rdx]
lea rax, [rax, +, 2*rax]
add rax, rdx
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rax, qword, ptr, [rdx, +, 4696]
- lea rdx, [rcx, +, rax, +, 10434]
+ lea rdx, [rcx, +, rax, +, 10698]
mov ecx, 7
- jmp LBB391_201
-LBB391_199:
- imul rcx, qword, ptr, [rsp, +, 24], 44
- mov rdx, qword, ptr, [rsp, +, 16]
+ jmp LBB450_90
+LBB450_88:
+ imul rcx, qword, ptr, [rsp, +, 32], 44
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
lea rdx, [rax, +, 4*rax]
lea rdx, [rax, +, 4*rdx]
add rdx, rax
- lea rdx, [rcx, +, rdx, +, 10706]
+ lea rdx, [rcx, +, rdx, +, 10970]
mov ecx, 11
- jmp LBB391_201
-LBB391_200:
- mov rcx, qword, ptr, [rsp, +, 24]
+ jmp LBB450_90
+LBB450_89:
+ mov rcx, qword, ptr, [rsp, +, 32]
lea rcx, [rcx, +, 2*rcx]
shl rcx, 4
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
lea rax, [rax, +, 2*rax]
- lea rdx, [rcx, +, 8*rax, +, 10794]
+ lea rdx, [rcx, +, 8*rax, +, 11058]
mov ecx, 12
-LBB391_201:
- mov rdi, qword, ptr, [rsp, +, 32]
- call qword, ptr, [rsp, +, 80]
- lea rax, [rip, +, __ZN5rav1e7context17k_eob_offset_bits17h95c942dab8f0cb03E]
- movzx ebx, word, ptr, [rax, +, 2*r12]
+LBB450_90:
+ mov rdi, qword, ptr, [rsp, +, 40]
+ call qword, ptr, [rsp, +, 48]
+ lea rax, [rip, +, __ZN5rav1e7context17k_eob_offset_bits17h7f5ad5424b3ea534E]
+ movzx ebx, word, ptr, [rax, +, 2*r13]
test bx, bx
- je LBB391_206
- lea esi, [r12, -, 3]
+ je LBB450_97
+ lea esi, [r13, -, 3]
cmp esi, 8
- mov rdx, qword, ptr, [rsp, +, 64]
- ja LBB391_359
+ ja LBB450_151
lea ecx, [rbx, -, 1]
xor eax, eax
- bt r14d, ecx
+ bt r15d, ecx
setb al
- imul rcx, rdx, 108
- mov rdx, qword, ptr, [rsp, +, 16]
+ imul rcx, qword, ptr, [rsp, +, 88], 108
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
- imul rdx, qword, ptr, [rsp, +, 24], 54
+ imul rdx, qword, ptr, [rsp, +, 32], 54
add rdx, rcx
lea rcx, [rsi, +, 2*rsi]
- lea rdx, [rdx, +, 2*rcx, +, 9846]
+ lea rdx, [rdx, +, 2*rcx, +, 10110]
mov ecx, 3
- mov r15, qword, ptr, [rsp, +, 32]
- mov rdi, r15
+ mov rdi, qword, ptr, [rsp, +, 40]
mov esi, eax
- call qword, ptr, [rsp, +, 80]
- cmp bx, 2
- jb LBB391_206
- mov rax, qword, ptr, [rsp, +, 112]
- mov r12, qword, ptr, [rax, +, 56]
+ call qword, ptr, [rsp, +, 48]
add ebx, -2
-LBB391_205:
+LBB450_95:
+ cmp bx, -1
+ je LBB450_97
xor esi, esi
- bt r14d, ebx
+ bt r15d, ebx
setb sil
- mov rdi, r15
- call r12
dec ebx
- cmp bx, -1
- jne LBB391_205
-LBB391_206:
- mov ecx, 2
- mov edx, 9
- mov eax, 3
- lea rsi, [rip, +, LJTI391_9]
mov rdi, qword, ptr, [rsp, +, 40]
- movsxd rdi, dword, ptr, [rsi, +, 4*rdi]
- add rdi, rsi
- mov esi, dword, ptr, [rbp, +, 40]
- jmp rdi
-LBB391_207:
- mov ecx, 3
- mov eax, dword, ptr, [rbp, +, 40]
- mov esi, eax
- jmp LBB391_213
-LBB391_208:
- mov eax, dword, ptr, [rbp, +, 40]
- mov edx, eax
-LBB391_209:
- mov ecx, 4
- mov esi, edx
- jmp LBB391_213
-LBB391_210:
- mov eax, dword, ptr, [rbp, +, 40]
- jmp LBB391_212
-LBB391_132:
- mov edi, 2
-LBB391_133:
- mov ecx, dword, ptr, [rbp, +, 40]
- cmp ecx, 18
- jbe LBB391_134
- jmp LBB391_356
-LBB391_146:
- xor eax, eax
- cmp byte, ptr, [rbp, +, 32], 13
- jbe LBB391_158
- cmp edi, 2
- setne al
- lea rax, [rax, +, rax, +, 6]
- lea rdx, [rip, +, __ZN5rav1e7context10num_tx_set17hf7bcec8c7d74e8d9E]
- mov rdi, qword, ptr, [rdx, +, 8*rax]
- cmp rdi, 2
- jae LBB391_140
- jmp LBB391_144
-LBB391_148:
- mov edi, 3
- mov ecx, dword, ptr, [rbp, +, 40]
- cmp ecx, 18
- jbe LBB391_134
- jmp LBB391_356
-LBB391_149:
- mov eax, 266256
- bt eax, ecx
- jb LBB391_150
- jmp LBB391_356
-LBB391_211:
- mov eax, 10
-LBB391_212:
- mov ecx, 5
- mov esi, eax
-LBB391_213:
- movsxd rax, esi
- lea rdx, [rip, +, l_switch.table._ZN5rav1e11recon_intra15has_bottom_left17h03b44d91be520c02E.700]
- add ecx, dword, ptr, [rdx, +, 8*rax]
- mov r8d, 1
- mov eax, 1
- shl rax, cl
- cmp word, ptr, [rsp, +, 48], 0
- mov r9, qword, ptr, [rsp, +, 56]
- je LBB391_267
- lea rcx, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.694]
- mov rdx, qword, ptr, [rsp, +, 40]
- mov rcx, qword, ptr, [rcx, +, 8*rdx]
- mov edi, 1
- shl rdi, cl
- mov r10, qword, ptr, [rsp, +, 48]
- lea r14d, [r10, -, 1]
- lea rsi, [rdi, +, 4]
- add rdi, 5
- mov qword, ptr, [rsp, +, 120], rdi
- mov edi, 2
- shl rdi, cl
- mov edx, 3
- shl rdx, cl
- mov ebx, 4
- mov qword, ptr, [rsp, +, 72], rcx
- shl rbx, cl
- add rdi, 8
- mov qword, ptr, [rsp, +, 184], rdi
- add rdx, 12
- mov qword, ptr, [rsp, +, 216], rdx
- add rbx, 16
- mov qword, ptr, [rsp, +, 128], rbx
- mov rdi, rax
- shr rdi, 3
- shr rax, 2
- movzx r12d, r14w
- movzx ebx, r10w
- xor ecx, ecx
- cmp rax, r12
- setb cl
- or rcx, 2
- cmp rdi, r12
- cmovae rcx, r8
- xor r11d, r11d
- test r14w, r14w
- cmove rcx, r11
- mov qword, ptr, [rsp, +, 88], rsi
- mov qword, ptr, [rsp, +, 104], rcx
-LBB391_215:
- cmp qword, ptr, [rsp, +, 152], r11
- je LBB391_326
- mov rax, qword, ptr, [rsp, +, 192]
- movzx r10d, word, ptr, [rax, +, 2*r11]
- mov rax, rcx
- cmp r12, r11
- je LBB391_263
- mov r15, r10
- mov rcx, qword, ptr, [rsp, +, 72]
- shr r15, cl
- lea rdi, [r10, +, 4*r15]
- mov rdx, qword, ptr, [rsp, +, 144]
- sub rdx, rdi
- jb LBB391_332
- cmp rdx, 2
- mov rax, qword, ptr, [rsp, +, 128]
- jb LBB391_333
- cmp rsi, rdx
- jae LBB391_334
- mov r8, rbx
- add rdi, qword, ptr, [rsp, +, 96]
- movzx ebx, byte, ptr, [rdi, +, 1]
- cmp bl, 3
- jb LBB391_222
- mov ecx, 3
- movzx r14d, byte, ptr, [rdi, +, rsi]
- cmp r14b, 3
- jae LBB391_223
- jmp LBB391_224
-LBB391_222:
- movzx ecx, bl
- movzx r14d, byte, ptr, [rdi, +, rsi]
- cmp r14b, 3
- jb LBB391_224
-LBB391_223:
- mov r14d, 3
-LBB391_224:
- cmp r9b, 2
- je LBB391_230
- test r9b, r9b
- jne LBB391_234
- cmp qword, ptr, [rsp, +, 120], rdx
- jae LBB391_338
- cmp rdx, 3
- jb LBB391_339
- mov rsi, qword, ptr, [rsp, +, 120]
- movzx ebx, byte, ptr, [rdi, +, rsi]
- cmp bl, 3
- jb LBB391_238
- mov ebx, 3
- mov r9, qword, ptr, [rsp, +, 184]
- cmp r9, rdx
- jae LBB391_344
-LBB391_239:
- lea r13, [rdi, +, 2]
- mov edx, r10d
- or edx, dword, ptr, [rsp, +, 56]
- je LBB391_261
-LBB391_240:
- add r14b, cl
- add bl, r14b
- movzx edx, byte, ptr, [r13]
- movzx r9d, byte, ptr, [rdi, +, r9]
- mov r14d, 3
- cmp dl, 3
- jb LBB391_242
- mov edi, 3
- add bl, dil
- cmp r9b, 3
- mov r13, qword, ptr, [rsp, +, 136]
- jb LBB391_243
- jmp LBB391_244
-LBB391_230:
- cmp rdx, 3
- jb LBB391_340
- je LBB391_341
- movzx ebx, byte, ptr, [rdi, +, 2]
- cmp bl, 3
- jb LBB391_259
- mov ebx, 3
- cmp rdx, 4
- ja LBB391_260
- jmp LBB391_345
-LBB391_234:
- mov rsi, qword, ptr, [rsp, +, 184]
- cmp rsi, rdx
- mov r9, qword, ptr, [rsp, +, 216]
- jae LBB391_342
- cmp r9, rdx
- jae LBB391_343
- movzx ebx, byte, ptr, [rdi, +, rsi]
- cmp bl, 3
- jb LBB391_265
- mov ebx, 3
- cmp rax, rdx
- mov rsi, rax
- jb LBB391_266
- jmp LBB391_346
-LBB391_242:
- movzx edi, dl
- add bl, dil
- cmp r9b, 3
- mov r13, qword, ptr, [rsp, +, 136]
- jae LBB391_244
-LBB391_243:
- movzx r14d, r9b
-LBB391_244:
- mov r9, qword, ptr, [rsp, +, 56]
- mov rdi, r15
- mov rcx, qword, ptr, [rsp, +, 72]
- shl rdi, cl
- add bl, r14b
- inc bl
- shr bl
- cmp bl, 4
- jb LBB391_246
- mov edx, 4
- jmp LBB391_247
-LBB391_246:
- movzx edx, bl
-LBB391_247:
- mov rsi, qword, ptr, [rsp, +, 88]
- mov rbx, r10
- sub rbx, rdi
- test r9, r9
- je LBB391_254
- cmp r9, 1
- je LBB391_251
- cmp rbx, 32
- jae LBB391_347
- lea rax, [rip, +, __ZN5rav1e7context20nz_map_ctx_offset_1d17h5c33a16028286b9eE]
- add rdx, qword, ptr, [rax, +, 8*rbx]
- jmp LBB391_253
-LBB391_251:
- cmp r15, 31
- ja LBB391_348
- lea rax, [rip, +, __ZN5rav1e7context20nz_map_ctx_offset_1d17h5c33a16028286b9eE]
- add rdx, qword, ptr, [rax, +, 8*r15]
-LBB391_253:
- mov rax, rdx
- jmp LBB391_262
-LBB391_254:
- cmp rbx, 4
- jb LBB391_256
- mov ebx, 4
-LBB391_256:
- cmp r15, 4
- jb LBB391_258
- mov r15d, 4
-LBB391_258:
- lea rdi, [rbx, +, 4*rbx]
- mov ebx, dword, ptr, [rbp, +, 40]
- lea rbx, [rbx, +, 4*rbx]
- lea rbx, [rbx, +, 4*rbx]
- lea rax, [rip, +, __ZN5rav1e7context21av1_nz_map_ctx_offset17hbe8a450a7a9df899E]
- add rbx, rax
- add rbx, rdi
- movsx rax, byte, ptr, [r15, +, rbx]
- add rax, rdx
- jmp LBB391_262
-LBB391_238:
- movzx ebx, bl
- mov r9, qword, ptr, [rsp, +, 184]
- cmp r9, rdx
- jb LBB391_239
- jmp LBB391_344
-LBB391_259:
- movzx ebx, bl
- cmp rdx, 4
- jbe LBB391_345
-LBB391_260:
- lea r13, [rdi, +, 3]
- mov r9d, 4
- mov edx, r10d
- or edx, dword, ptr, [rsp, +, 56]
- jne LBB391_240
-LBB391_261:
- xor eax, eax
- mov r13, qword, ptr, [rsp, +, 136]
- mov r9, qword, ptr, [rsp, +, 56]
- mov rsi, qword, ptr, [rsp, +, 88]
-LBB391_262:
- mov rbx, r8
- mov rcx, qword, ptr, [rsp, +, 104]
-LBB391_263:
- cmp r10d, 4095
- ja LBB391_327
- inc r11
- mov byte, ptr, [rsp, +, r10, +, 9120], al
- cmp rbx, r11
- jne LBB391_215
- jmp LBB391_267
-LBB391_265:
- movzx ebx, bl
- cmp rax, rdx
- mov rsi, rax
- jae LBB391_346
-LBB391_266:
- lea r13, [rdi, +, r9]
- mov r9, rsi
- mov edx, r10d
- or edx, dword, ptr, [rsp, +, 56]
- jne LBB391_240
- jmp LBB391_261
-LBB391_267:
- lea rax, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.294]
- mov rcx, qword, ptr, [rsp, +, 200]
+ mov rax, qword, ptr, [rsp, +, 56]
+ call qword, ptr, [rax, +, 56]
+ jmp LBB450_95
+LBB450_97:
+ lea rax, [rsp, +, 3648]
+ mov qword, ptr, [rsp, +, 8], rax
+ movzx eax, r14b
+ mov dword, ptr, [rsp, +, 80], eax
+ mov dword, ptr, [rsp], eax
+ mov rdi, qword, ptr, [rsp, +, 96]
+ mov rsi, qword, ptr, [rsp, +, 104]
+ mov rdx, qword, ptr, [rsp, +, 136]
+ mov rcx, qword, ptr, [rbp, +, 32]
+ mov r8d, ecx
+ mov r9d, dword, ptr, [rbp, +, 48]
+ call rav1e::context::ContextWriter::get_nz_map_contexts
+ movzx r14d, word, ptr, [rsp, +, 2208]
+ mov rdx, qword, ptr, [rbp, +, 32]
+ cmp r14, rdx
+ mov r12, rdx
+ cmovb r12, r14
+ test r12, r12
+ je LBB450_118
+ lea rax, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19get_nz_map_contexts17h5ed0f06b23a5757dE]
+ mov ecx, dword, ptr, [rbp, +, 48]
mov rax, qword, ptr, [rax, +, 8*rcx]
- mov qword, ptr, [rsp, +, 120], rax
- lea rax, [rip, +, l_switch.table._ZN5rav1e7context13ContextWriter19write_coeffs_lv_map17h0d5240d568c2960dE.694]
- mov rcx, qword, ptr, [rsp, +, 40]
- mov rcx, qword, ptr, [rax, +, 8*rcx]
+ mov qword, ptr, [rsp, +, 72], rax
+ mov rax, qword, ptr, [rsp, +, 88]
+ cmp rax, 3
+ mov ecx, 3
+ cmovb rcx, rax
mov qword, ptr, [rsp, +, 128], rcx
- mov eax, 1
- shl rax, cl
- lea rcx, [rax, +, rax, +, 8]
- mov qword, ptr, [rsp, +, 104], rcx
- add rax, 4
- mov qword, ptr, [rsp, +, 88], rax
- mov rdx, qword, ptr, [rsp, +, 64]
- cmp rdx, 3
- mov eax, 3
- cmovb rax, rdx
- imul r12, rax, 420
- mov rdi, qword, ptr, [rsp, +, 48]
- mov rcx, rdi
- lea rbx, [rcx, -, 1]
- cmp rbx, qword, ptr, [rsp, +, 152]
- jb LBB391_270
- jmp LBB391_321
-LBB391_268:
- mov rcx, qword, ptr, [rsp, +, 72]
- test rcx, rcx
- mov r13, qword, ptr, [rsp, +, 136]
- mov rdx, qword, ptr, [rsp, +, 64]
- mov rdi, qword, ptr, [rsp, +, 48]
- je LBB391_298
- lea rbx, [rcx, -, 1]
- cmp rbx, qword, ptr, [rsp, +, 152]
- jae LBB391_321
-LBB391_270:
- mov rax, qword, ptr, [rsp, +, 192]
- movzx r15d, word, ptr, [rax, +, 2*rcx, -, 2]
- cmp r15, 4095
- ja LBB391_322
- cmp rbx, r13
- jae LBB391_323
- movsx rsi, byte, ptr, [rsp, +, r15, +, 9120]
- mov eax, dword, ptr, [rsp, +, 4*rcx, +, 220]
- mov r13d, eax
- neg r13d
- cmovl r13d, eax
- cmp r13d, 4
- mov eax, 3
- cmovl eax, r13d
- cmp rcx, rdi
- mov qword, ptr, [rsp, +, 72], rbx
- jne LBB391_275
+ mov rax, qword, ptr, [rsp, +, 136]
+ movzx r13d, word, ptr, [rax, +, 2*r12, -, 2]
+ cmp r13, 1023
+ jbe LBB450_101
+ jmp LBB450_152
+LBB450_116:
+ dec r12
+ mov rdx, qword, ptr, [rbp, +, 32]
+ je LBB450_117
+ mov rax, qword, ptr, [rsp, +, 136]
+ movzx r13d, word, ptr, [rax, +, 2*r12, -, 2]
+ cmp r13, 1023
+ ja LBB450_152
+LBB450_101:
+ movzx eax, word, ptr, [rsp, +, 2*r12, +, 158]
+ movsx rsi, byte, ptr, [rsp, +, r13, +, 3648]
+ mov r14d, eax
+ neg r14w
+ cmovl r14w, ax
+ movsx eax, r14w
+ cmp eax, 3
+ mov ecx, 3
+ cmovae eax, ecx
+ cmp rdx, r12
+ jne LBB450_104
cmp sil, 3
- ja LBB391_328
- mov rcx, rdx
+ ja LBB450_153
+ mov rcx, qword, ptr, [rsp, +, 88]
shl rcx, 6
- mov rdx, qword, ptr, [rsp, +, 16]
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
dec eax
- mov rdx, qword, ptr, [rsp, +, 24]
+ mov rdx, qword, ptr, [rsp, +, 32]
shl rdx, 5
add rdx, rcx
- lea rdx, [rdx, +, 8*rsi, +, 10890]
+ lea rdx, [rdx, +, 8*rsi, +, 11154]
mov ecx, 4
- jmp LBB391_277
-LBB391_275:
+ mov rdi, qword, ptr, [rsp, +, 40]
+ mov esi, eax
+ call qword, ptr, [rsp, +, 48]
+LBB450_106:
+ cmp r14w, 3
+ jl LBB450_116
+ mov rdi, qword, ptr, [rsp, +, 96]
+ mov rsi, qword, ptr, [rsp, +, 104]
+ mov rdx, r13
+ mov rcx, qword, ptr, [rsp, +, 72]
+ mov r8d, dword, ptr, [rsp, +, 80]
+ call rav1e::context::ContextWriter::get_br_ctx
+ cmp rax, 20
+ ja LBB450_149
+ lea ecx, [r14, -, 3]
+ cmp r14w, 6
+ mov edx, 3
+ cmovge ecx, edx
+ movsx esi, cx
+ imul rbx, qword, ptr, [rsp, +, 128], 420
+ mov rcx, qword, ptr, [rsp, +, 24]
+ mov rcx, qword, ptr, [rcx, +, 4696]
+ add rcx, rbx
+ imul r13, qword, ptr, [rsp, +, 32], 210
+ add rcx, r13
+ lea r15, [rax, +, 4*rax]
+ lea rdx, [rcx, +, 2*r15, +, 15674]
+ mov ecx, 5
+ mov rdi, qword, ptr, [rsp, +, 40]
+ call qword, ptr, [rsp, +, 48]
+ cmp r14w, 6
+ jl LBB450_116
+ lea eax, [r14, -, 6]
+ cmp r14w, 9
+ mov ecx, 3
+ cmovge eax, ecx
+ movsx esi, ax
+ mov rax, qword, ptr, [rsp, +, 24]
+ mov rax, qword, ptr, [rax, +, 4696]
+ add rax, rbx
+ add rax, r13
+ lea rdx, [rax, +, 2*r15, +, 15674]
+ mov ecx, 5
+ mov rdi, qword, ptr, [rsp, +, 40]
+ call qword, ptr, [rsp, +, 48]
+ cmp r14w, 9
+ jl LBB450_116
+ lea eax, [r14, -, 9]
+ cmp r14w, 12
+ mov ecx, 3
+ cmovge eax, ecx
+ movsx esi, ax
+ mov rax, qword, ptr, [rsp, +, 24]
+ mov rax, qword, ptr, [rax, +, 4696]
+ add rax, rbx
+ add rax, r13
+ lea rdx, [rax, +, 2*r15, +, 15674]
+ mov ecx, 5
+ mov rdi, qword, ptr, [rsp, +, 40]
+ call qword, ptr, [rsp, +, 48]
+ cmp r14w, 12
+ jl LBB450_116
+ cmp r14w, 16
+ mov eax, 15
+ cmovge r14d, eax
+ add r14d, -12
+ movsx esi, r14w
+ mov rax, qword, ptr, [rsp, +, 24]
+ add rbx, qword, ptr, [rax, +, 4696]
+ add rbx, r13
+ lea rdx, [rbx, +, 2*r15, +, 15674]
+ mov ecx, 5
+ mov rdi, qword, ptr, [rsp, +, 40]
+ call qword, ptr, [rsp, +, 48]
+ jmp LBB450_116
+LBB450_104:
cmp sil, 41
- ja LBB391_329
- imul rcx, rdx, 840
- mov rdx, qword, ptr, [rsp, +, 16]
+ ja LBB450_154
+ imul rcx, qword, ptr, [rsp, +, 88], 840
+ mov rdx, qword, ptr, [rsp, +, 24]
add rcx, qword, ptr, [rdx, +, 4696]
- imul rdx, qword, ptr, [rsp, +, 24], 420
+ imul rdx, qword, ptr, [rsp, +, 32], 420
add rdx, rcx
lea rcx, [rsi, +, 4*rsi]
- lea rdx, [rdx, +, 2*rcx, +, 11210]
+ lea rdx, [rdx, +, 2*rcx, +, 11474]
mov ecx, 5
-LBB391_277:
- mov rdi, qword, ptr, [rsp, +, 32]
+ mov rdi, qword, ptr, [rsp, +, 40]
mov esi, eax
- call qword, ptr, [rsp, +, 80]
- cmp r13d, 3
- jl LBB391_268
- mov r8, r15
- mov rcx, qword, ptr, [rsp, +, 128]
- shr r8, cl
- mov rax, r8
- shl rax, cl
- mov rdi, r15
- sub rdi, rax
- mov rsi, r8
- mov rax, qword, ptr, [rsp, +, 88]
- imul rsi, rax
- lea rcx, [rsi, +, rdi, +, 1]
- mov rdx, qword, ptr, [rsp, +, 144]
- cmp rcx, rdx
- jae LBB391_330
- add rsi, rdi
- add rax, rsi
- cmp rax, rdx
- jae LBB391_331
- mov r9, qword, ptr, [rsp, +, 96]
- mov bl, byte, ptr, [r9, +, rax]
- add bl, byte, ptr, [r9, +, rcx]
- movzx ecx, bl
- mov rbx, qword, ptr, [rsp, +, 56]
- test bl, bl
- je LBB391_290
- cmp bl, 1
- je LBB391_286
- add rsi, 2
- cmp rsi, rdx
- jae LBB391_335
- mov rax, qword, ptr, [rsp, +, 96]
- movzx eax, byte, ptr, [rax, +, rsi]
- lea r14, [rcx, +, rax, +, 1]
- shr r14
- cmp r14, 6
- mov eax, 6
- cmovae r14, rax
- test r15w, r15w
- je LBB391_295
- test rdi, rdi
- je LBB391_285
-LBB391_294:
- add r14, 14
- jmp LBB391_295
-LBB391_286:
- add rsi, qword, ptr, [rsp, +, 104]
- cmp rsi, rdx
- jae LBB391_336
- mov rax, qword, ptr, [rsp, +, 96]
- movzx eax, byte, ptr, [rax, +, rsi]
- lea r14, [rcx, +, rax, +, 1]
- shr r14
- cmp r14, 6
- mov eax, 6
- cmovae r14, rax
- test r15w, r15w
- je LBB391_295
- test r8, r8
- jne LBB391_294
- jmp LBB391_285
-LBB391_290:
- inc rax
- cmp rax, rdx
- jae LBB391_337
- mov rdx, qword, ptr, [rsp, +, 96]
- movzx eax, byte, ptr, [rdx, +, rax]
- lea r14, [rcx, +, rax, +, 1]
- shr r14
- cmp r14, 6
- mov eax, 6
- cmovae r14, rax
- test r15w, r15w
- je LBB391_295
- or rdi, r8
- cmp rdi, 1
- ja LBB391_294
-LBB391_285:
- add r14, 7
-LBB391_295:
- add r13d, -3
- mov ebx, 3
-LBB391_296:
- cmp r13d, 4
- mov esi, 3
- cmovl esi, r13d
- mov rax, qword, ptr, [rsp, +, 16]
- mov rax, qword, ptr, [rax, +, 4696]
- add rax, r12
- imul rcx, qword, ptr, [rsp, +, 24], 210
- add rcx, rax
- lea rax, [r14, +, 4*r14]
- lea rdx, [rcx, +, 2*rax, +, 15410]
- mov ecx, 5
- mov rdi, qword, ptr, [rsp, +, 32]
- call qword, ptr, [rsp, +, 80]
- cmp r13d, 3
- jl LBB391_268
- lea eax, [rbx, +, 3]
- add r13d, -3
- cmp ebx, 12
- mov ebx, eax
- jb LBB391_296
- jmp LBB391_268
-LBB391_298:
- mov rbx, qword, ptr, [rsp, +, 120]
- cmp rbx, 3
- jae LBB391_307
- xor r12d, r12d
- mov rax, qword, ptr, [rsp, +, 24]
- lea r14, [rax, +, 8*rax]
+ call qword, ptr, [rsp, +, 48]
+ jmp LBB450_106
+LBB450_117:
+ movzx r14d, word, ptr, [rsp, +, 2208]
+LBB450_118:
+ mov rbx, r14
+ add rbx, r14
+ je LBB450_127
+ mov rax, qword, ptr, [rsp, +, 152]
+ cmp rax, 3
+ jae LBB450_120
add r14, r14
- lea r15, [rbx, +, 2*rbx]
- cmp r13, r12
- jne LBB391_302
- jmp LBB391_324
-LBB391_306:
- add ebx, -15
- mov rdi, qword, ptr, [rsp, +, 32]
- mov esi, ebx
- mov rax, qword, ptr, [rsp, +, 112]
- call qword, ptr, [rax, +, 72]
- mov rdi, qword, ptr, [rsp, +, 48]
-LBB391_300:
- cmp rdi, r12
- je LBB391_314
- cmp r13, r12
- je LBB391_324
-LBB391_302:
- mov rax, r12
- inc r12
- mov esi, dword, ptr, [rsp, +, 4*rax, +, 224]
- mov ebx, esi
- neg ebx
- cmovl ebx, esi
- test ebx, ebx
- je LBB391_300
- shr esi, 31
- test rax, rax
- je LBB391_305
- mov rdi, qword, ptr, [rsp, +, 32]
- mov rax, qword, ptr, [rsp, +, 112]
+ xor ebx, ebx
+ mov rcx, qword, ptr, [rsp, +, 32]
+ lea r15, [rcx, +, 8*rcx]
+ add r15, r15
+ lea r12, [rax, +, 2*rax]
+ movzx esi, word, ptr, [rsp, +, 2*rbx, +, 160]
+ test esi, esi
+ jne LBB450_132
+LBB450_137:
+ inc rbx
+ add r14, -2
+ je LBB450_127
+ movzx esi, word, ptr, [rsp, +, 2*rbx, +, 160]
+ test esi, esi
+ je LBB450_137
+LBB450_132:
+ mov r13d, esi
+ neg r13d
+ test si, si
+ cmovns r13d, esi
+ shr esi, 15
+ test rbx, rbx
+ je LBB450_134
+ mov rdi, qword, ptr, [rsp, +, 40]
+ mov rax, qword, ptr, [rsp, +, 56]
call qword, ptr, [rax, +, 56]
- cmp ebx, 15
- mov rdi, qword, ptr, [rsp, +, 48]
- jl LBB391_300
- jmp LBB391_306
-LBB391_305:
- mov rax, qword, ptr, [rsp, +, 16]
+LBB450_135:
+ cmp r13w, 15
+ jl LBB450_137
+ add r13d, -15
+ movsx esi, r13w
+ mov rdi, qword, ptr, [rsp, +, 40]
+ mov rax, qword, ptr, [rsp, +, 56]
+ call qword, ptr, [rax, +, 72]
+ jmp LBB450_137
+LBB450_134:
+ mov rax, qword, ptr, [rsp, +, 24]
mov rax, qword, ptr, [rax, +, 4696]
- add rax, r14
- lea rdx, [rax, +, 2*r15, +, 9810]
+ add rax, r15
+ lea rdx, [rax, +, 2*r12, +, 10074]
mov ecx, 3
- mov rdi, qword, ptr, [rsp, +, 32]
- call qword, ptr, [rsp, +, 80]
- cmp ebx, 15
- mov rdi, qword, ptr, [rsp, +, 48]
- jl LBB391_300
- jmp LBB391_306
-LBB391_151:
- mov eax, 133136
- mov ecx, dword, ptr, [rbp, +, 40]
- bt eax, ecx
- jae LBB391_356
-LBB391_150:
- xor eax, eax
- lea rdx, [rip, +, __ZN5rav1e7context10num_tx_set17hf7bcec8c7d74e8d9E]
- mov rdi, qword, ptr, [rdx, +, 8*rax]
- cmp rdi, 2
- jae LBB391_140
- jmp LBB391_144
-LBB391_153:
- mov esi, 4
-LBB391_154:
- xor ebx, ebx
- mov ecx, dword, ptr, [rbp, +, 40]
- dec ecx
- lea rdx, [rip, +, LJTI391_7]
- movsxd rcx, dword, ptr, [rdx, +, 4*rcx]
- add rcx, rdx
- xor edx, edx
- jmp rcx
-LBB391_155:
- mov esi, 3
- xor ebx, ebx
- mov ecx, dword, ptr, [rbp, +, 40]
- dec ecx
- lea rdx, [rip, +, LJTI391_7]
- movsxd rcx, dword, ptr, [rdx, +, 4*rcx]
- add rcx, rdx
- xor edx, edx
- jmp rcx
-LBB391_156:
- mov ebx, 1
- mov edx, dword, ptr, [rbp, +, 40]
- cmp edx, 18
- ja LBB391_356
-LBB391_161:
- mov ecx, 258030
- bt ecx, edx
- jae LBB391_170
- cmp edx, 17
- ja LBB391_356
- mov ecx, 129006
- bt ecx, edx
- jae LBB391_172
- cmp esi, 3
- jne LBB391_166
- xor edx, edx
- cmp byte, ptr, [rbp, +, 32], 13
- seta dl
- jmp LBB391_175
-LBB391_166:
- xor ecx, ecx
- cmp byte, ptr, [rbp, +, 80], 0
- je LBB391_168
- cmp byte, ptr, [rbp, +, 32], 13
- seta cl
- mov edx, 2
- sub rdx, rcx
- jmp LBB391_175
-LBB391_157:
- mov ebx, 2
- mov edx, dword, ptr, [rbp, +, 40]
- cmp edx, 18
- jbe LBB391_161
- jmp LBB391_356
-LBB391_168:
- cmp byte, ptr, [rbp, +, 32], 13
- jbe LBB391_174
- cmp ebx, 2
- setne cl
- lea rdx, [rcx, +, rcx, +, 6]
- jmp LBB391_175
-LBB391_158:
- cmp edi, 2
- setne al
- lea rax, [rax, +, rax, +, 2]
- lea rdx, [rip, +, __ZN5rav1e7context10num_tx_set17hf7bcec8c7d74e8d9E]
- mov rdi, qword, ptr, [rdx, +, 8*rax]
- cmp rdi, 2
- jae LBB391_140
- jmp LBB391_144
-LBB391_159:
- mov ebx, 3
-LBB391_160:
- mov edx, dword, ptr, [rbp, +, 40]
- cmp edx, 18
- jbe LBB391_161
-LBB391_356:
- ud2
-LBB391_170:
- mov ecx, 266256
- bt ecx, edx
- jb LBB391_171
- jmp LBB391_356
-LBB391_172:
- mov ecx, 133136
- mov edx, dword, ptr, [rbp, +, 40]
- bt ecx, edx
- jae LBB391_356
-LBB391_171:
- xor edx, edx
- jmp LBB391_175
-LBB391_174:
- cmp ebx, 2
- setne cl
- lea rdx, [rcx, +, rcx, +, 2]
-LBB391_175:
- cmp byte, ptr, [rbp, +, 32], 13
- lea rcx, [rip, +, __ZN5rav1e7context18tx_set_index_inter17he80fc3b39637ebadE]
- lea rsi, [rip, +, __ZN5rav1e7context18tx_set_index_intra17h04cebdb552e75b08E]
- cmova rsi, rcx
- movsx rsi, byte, ptr, [rsi, +, rdx]
- test rsi, rsi
- jle LBB391_360
- shl rax, 7
- lea rcx, [rip, +, __ZN5rav1e7context11av1_tx_used17he4285373abaf69b3E]
- add rcx, rax
- mov edx, dword, ptr, [rbp, +, 48]
- cmp qword, ptr, [rcx, +, 8*rdx], 0
- je LBB391_361
- lea rcx, [rip, +, __ZN5rav1e7context10av1_tx_ind17h0a782544f0424fedE]
- add rcx, rax
- mov eax, dword, ptr, [rcx, +, 8*rdx]
- cmp byte, ptr, [rbp, +, 32], 13
- jbe LBB391_183
- cmp sil, 3
- ja LBB391_364
- mov ebx, r10d
- cmp r10d, 3
- ja LBB391_365
- cmp rdi, -1
- je LBB391_362
- lea rcx, [rdi, +, 1]
- cmp rdi, 17
- jae LBB391_363
- mov rdx, rbx
- shl rdx, 5
- lea rdx, [rdx, +, 2*rbx]
- mov rdi, rsi
- shl rdi, 7
- lea rsi, [rdi, +, 8*rsi]
- add r9, rsi
- lea rdx, [r9, +, rdx, +, 7648]
- jmp LBB391_189
-LBB391_183:
- cmp sil, 2
- ja LBB391_366
- mov r8d, r10d
- cmp r10d, 3
- ja LBB391_367
- mov cl, byte, ptr, [rbp, +, 32]
- movzx ebx, cl
- cmp cl, 12
- ja LBB391_368
- cmp rdi, -1
- je LBB391_362
- lea rcx, [rdi, +, 1]
- cmp rdi, 17
- jae LBB391_363
- mov rdx, rbx
- shl rdx, 5
- lea rdx, [rdx, +, 2*rbx]
- imul rsi, rsi, 1768
- add r9, rsi
- imul rsi, r8, 442
- add rsi, r9
- lea rdx, [rsi, +, rdx, +, 2344]
-LBB391_189:
- mov rdi, qword, ptr, [rsp, +, 32]
- mov esi, eax
- call qword, ptr, [rsp, +, 80]
- mov rdx, qword, ptr, [rsp, +, 48]
- cmp rdx, 32
- jbe LBB391_145
-LBB391_190:
- lea rax, [rdx, -, 1]
- shr rax, 5
- cmp rax, 16
- mov ecx, 16
- cmovb rcx, rax
- lea rax, [rip, +, __ZN5rav1e7context16eob_to_pos_large17h22e8190e309c7018E]
- add rax, rcx
- mov ecx, dword, ptr, [rbp, +, 48]
- movzx r12d, byte, ptr, [rax]
- cmp r12, 11
- jbe LBB391_191
-LBB391_357:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.349]
- mov edx, 12
- mov rsi, r12
- call core::panicking::panic_bounds_check
-LBB391_307:
+ mov rdi, qword, ptr, [rsp, +, 40]
+ call qword, ptr, [rsp, +, 48]
+ jmp LBB450_135
+LBB450_120:
xor r14d, r14d
- cmp r13, r14
- jne LBB391_310
- jmp LBB391_324
-LBB391_308:
+ movzx eax, word, ptr, [rsp, +, 2*r14, +, 160]
+ test ax, ax
+ jne LBB450_122
+LBB450_126:
inc r14
- cmp rdi, r14
- je LBB391_314
- cmp r13, r14
- je LBB391_324
-LBB391_310:
- mov esi, dword, ptr, [rsp, +, 4*r14, +, 224]
- mov r15d, esi
- neg r15d
- cmovl r15d, esi
- test r15d, r15d
- je LBB391_308
+ add rbx, -2
+ je LBB450_127
+ movzx eax, word, ptr, [rsp, +, 2*r14, +, 160]
+ test ax, ax
+ je LBB450_126
+LBB450_122:
+ mov r15d, eax
+ neg r15w
+ cmovl r15w, ax
test r14, r14
- je LBB391_369
- shr esi, 31
- mov rdi, qword, ptr, [rsp, +, 32]
- mov rax, qword, ptr, [rsp, +, 112]
+ je LBB450_155
+ movzx esi, ax
+ shr esi, 15
+ mov rdi, qword, ptr, [rsp, +, 40]
+ mov rax, qword, ptr, [rsp, +, 56]
call qword, ptr, [rax, +, 56]
- cmp r15d, 15
- mov rdi, qword, ptr, [rsp, +, 48]
- jl LBB391_308
+ cmp r15w, 15
+ jl LBB450_126
add r15d, -15
- mov rdi, qword, ptr, [rsp, +, 32]
- mov esi, r15d
- mov rax, qword, ptr, [rsp, +, 112]
+ movsx esi, r15w
+ mov rdi, qword, ptr, [rsp, +, 40]
+ mov rax, qword, ptr, [rsp, +, 56]
call qword, ptr, [rax, +, 72]
- mov rdi, qword, ptr, [rsp, +, 48]
- jmp LBB391_308
-LBB391_314:
- mov rax, qword, ptr, [rsp, +, 208]
- cmp eax, 63
- mov ecx, 63
- cmovb ecx, eax
- mov edx, dword, ptr, [rsp, +, 224]
- test edx, edx
- js LBB391_316
- mov eax, ecx
- or eax, 128
- test edx, edx
- cmove eax, ecx
- jmp LBB391_317
-LBB391_316:
- or ecx, 64
- mov eax, ecx
-LBB391_317:
- mov rsi, qword, ptr, [rsp, +, 160]
- mov r8d, dword, ptr, [rbp, +, 40]
- mov rdi, qword, ptr, [rsp, +, 16]
- mov rdx, qword, ptr, [rsp, +, 168]
- mov rcx, qword, ptr, [rsp, +, 176]
- mov r9, qword, ptr, [rbp, +, 64]
- push rax
- push qword, ptr, [rbp, +, 72]
+ jmp LBB450_126
+LBB450_127:
+ mov ecx, dword, ptr, [rsp, +, 148]
+ cmp ecx, 63
+ mov eax, 63
+ cmovb eax, ecx
+ cmp word, ptr, [rsp, +, 2208], 0
+ je LBB450_156
+ movzx edx, word, ptr, [rsp, +, 160]
+ test dx, dx
+ mov r8d, dword, ptr, [rbp, +, 48]
+ js LBB450_139
+ mov ecx, eax
+ or ecx, 128
+ test dx, dx
+ cmove ecx, eax
+ jmp LBB450_140
+LBB450_139:
+ or eax, 64
+ mov ecx, eax
+LBB450_140:
+ mov dword, ptr, [rsp, +, 8], ecx
+ mov rax, qword, ptr, [rbp, +, 80]
+ mov qword, ptr, [rsp], rax
+ mov rdi, qword, ptr, [rsp, +, 24]
+ mov rsi, qword, ptr, [rsp, +, 64]
+ mov rdx, qword, ptr, [rsp, +, 112]
+ mov rcx, qword, ptr, [rsp, +, 120]
+ mov r9, qword, ptr, [rbp, +, 72]
call rav1e::context::BlockContext::set_coeff_context
- add rsp, 16
mov al, 1
-LBB391_318:
+ cmp word, ptr, [rsp, +, 2208], 0
+ je LBB450_47
+ mov word, ptr, [rsp, +, 2208], 0
+LBB450_47:
lea rsp, [rbp, -, 40]
pop rbx
pop r12
@@ -1988,204 +995,102 @@
pop r15
pop rbp
ret
-LBB391_319:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.292]
- mov edx, 3
- call core::panicking::panic_bounds_check
-LBB391_320:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.293]
- mov edx, 3
- call core::panicking::panic_bounds_check
-LBB391_321:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.375]
- mov rsi, rbx
- mov rdx, qword, ptr, [rsp, +, 152]
- call core::panicking::panic_bounds_check
-LBB391_322:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.376]
- mov edx, 4096
- mov rsi, r15
- call core::panicking::panic_bounds_check
-LBB391_323:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.377]
- mov rsi, rbx
- mov rdx, qword, ptr, [rsp, +, 136]
- call core::panicking::panic_bounds_check
-LBB391_324:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.380]
+LBB450_152:
+ lea rdi, [rip, +, l___unnamed_408]
+ mov edx, 1024
mov rsi, r13
- mov rdx, r13
- call core::panicking::panic_bounds_check
-LBB391_325:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.372]
- mov rdx, rbx
call core::panicking::panic_bounds_check
-LBB391_326:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.365]
- mov rdx, qword, ptr, [rsp, +, 152]
- mov rsi, rdx
- call core::panicking::panic_bounds_check
-LBB391_327:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.366]
- mov edx, 4096
- mov rsi, r10
+ jmp LBB450_12
+LBB450_9:
+ mov rdx, r15
+ jmp LBB450_11
+LBB450_10:
+ mov rdx, r15
+ inc rbx
+LBB450_11:
+ lea rdi, [rip, +, l___unnamed_409]
call core::panicking::panic_bounds_check
-LBB391_328:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.378]
+ jmp LBB450_12
+LBB450_153:
+ lea rdi, [rip, +, l___unnamed_410]
mov edx, 4
call core::panicking::panic_bounds_check
-LBB391_329:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.379]
+ jmp LBB450_12
+LBB450_154:
+ lea rdi, [rip, +, l___unnamed_411]
mov edx, 42
call core::panicking::panic_bounds_check
-LBB391_330:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.367]
- mov rsi, rcx
- call core::panicking::panic_bounds_check
-LBB391_331:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.368]
+ jmp LBB450_12
+LBB450_149:
+ lea rdi, [rip, +, l___unnamed_412]
+ mov edx, 21
mov rsi, rax
call core::panicking::panic_bounds_check
-LBB391_332:
- mov rsi, qword, ptr, [rsp, +, 144]
- call core::slice::slice_index_order_fail
-LBB391_333:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.352]
- mov esi, 1
- call core::panicking::panic_bounds_check
-LBB391_334:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.353]
- call core::panicking::panic_bounds_check
-LBB391_335:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.369]
- call core::panicking::panic_bounds_check
-LBB391_336:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.370]
- call core::panicking::panic_bounds_check
-LBB391_337:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.371]
+LBB450_12:
+ ud2
+LBB450_159:
+ call core::slice::slice_index_len_fail
+LBB450_150:
+ lea rdi, [rip, +, l___unnamed_413]
+ mov edx, 13
mov rsi, rax
call core::panicking::panic_bounds_check
-LBB391_338:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.354]
- mov rsi, qword, ptr, [rsp, +, 120]
- call core::panicking::panic_bounds_check
-LBB391_339:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.355]
- mov esi, 2
- call core::panicking::panic_bounds_check
-LBB391_340:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.357]
- mov esi, 2
- call core::panicking::panic_bounds_check
-LBB391_341:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.358]
- mov esi, 3
- mov edx, 3
- call core::panicking::panic_bounds_check
-LBB391_342:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.360]
- call core::panicking::panic_bounds_check
-LBB391_343:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.361]
- mov rsi, r9
- call core::panicking::panic_bounds_check
-LBB391_344:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.356]
- mov rsi, r9
- call core::panicking::panic_bounds_check
-LBB391_345:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.359]
- mov esi, 4
- call core::panicking::panic_bounds_check
-LBB391_346:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.362]
- call core::panicking::panic_bounds_check
-LBB391_347:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.363]
- mov edx, 32
- mov rsi, rbx
- call core::panicking::panic_bounds_check
-LBB391_348:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.364]
- mov edx, 32
- mov rsi, r15
- call core::panicking::panic_bounds_check
-LBB391_349:
- mov esi, 1024
- mov rdi, r13
- call core::slice::slice_index_len_fail
-LBB391_350:
- mov esi, 1024
- mov rdi, r8
+ jmp LBB450_12
+LBB450_42:
+ mov esi, 1384
call core::slice::slice_index_order_fail
-LBB391_351:
- mov rdi, r14
- call core::slice::slice_index_len_fail
-LBB391_352:
- mov esi, 16
- mov rdi, r10
- call core::slice::slice_index_order_fail
-LBB391_353:
- call core::slice::slice_index_len_fail
-LBB391_354:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.295]
- mov edx, 65
- call core::panicking::panic_bounds_check
-LBB391_355:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.373]
- mov edx, 13
+ jmp LBB450_12
+LBB450_80:
+ lea rdi, [rip, +, l_anon.fa0fe222166031f20e1f52209be64049.324]
+ mov edx, 12
+ mov rsi, r13
call core::panicking::panic_bounds_check
-LBB391_358:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.350]
- lea rdx, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.351]
+ jmp LBB450_12
+LBB450_79:
+ lea rdi, [rip, +, l_anon.fa0fe222166031f20e1f52209be64049.325]
+ lea rdx, [rip, +, l_anon.fa0fe222166031f20e1f52209be64049.326]
mov esi, 68
call std::panicking::begin_panic
-LBB391_359:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.374]
- mov edx, 9
- call core::panicking::panic_bounds_check
-LBB391_360:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.335]
- lea rdx, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.336]
- mov esi, 34
- call std::panicking::begin_panic
-LBB391_361:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.337]
- lea rdx, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.338]
- mov esi, 69
- call std::panicking::begin_panic
-LBB391_362:
- call core::slice::slice_index_overflow_fail
-LBB391_363:
- mov esi, 17
- mov rdi, rcx
- call core::slice::slice_index_len_fail
-LBB391_364:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.339]
- mov edx, 4
+ jmp LBB450_12
+LBB450_156:
+ lea rdi, [rip, +, l___unnamed_414]
+ xor esi, esi
+ xor edx, edx
call core::panicking::panic_bounds_check
-LBB391_365:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.339]
- mov edx, 4
- mov rsi, rbx
+ jmp LBB450_12
+LBB450_151:
+ lea rdi, [rip, +, l___unnamed_415]
+ mov edx, 9
call core::panicking::panic_bounds_check
-LBB391_366:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.340]
+ jmp LBB450_12
+LBB450_155:
+ lea rdi, [rip, +, l___unnamed_416]
mov edx, 3
+ mov rsi, qword, ptr, [rsp, +, 152]
call core::panicking::panic_bounds_check
-LBB391_367:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.340]
- mov edx, 4
- mov rsi, r8
- call core::panicking::panic_bounds_check
-LBB391_368:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.340]
- mov edx, 13
- mov rsi, rbx
- call core::panicking::panic_bounds_check
-LBB391_369:
- lea rdi, [rip, +, l_anon.b250b699a660f90ffc3779fa470fa63b.381]
- mov edx, 3
+ jmp LBB450_12
+LBB450_160:
+ mov r15, rax
+ mov rdi, r14
mov rsi, rbx
- call core::panicking::panic_bounds_check
+ call core::ptr::drop_in_place
+ jmp LBB450_148
+LBB450_143:
+ jmp LBB450_147
+LBB450_146:
+ jmp LBB450_147
+LBB450_138:
+ jmp LBB450_147
+LBB450_161:
+ jmp LBB450_147
+LBB450_145:
+ jmp LBB450_147
+LBB450_144:
+LBB450_147:
+ mov r15, rax
+LBB450_148:
+ lea rdi, [rsp, +, 160]
+ call core::ptr::drop_in_place
+ mov rdi, r15
+ call __Unwind_Resume
+ ud2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment