Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
F
ffmpeg.wasm-core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Linshizhi
ffmpeg.wasm-core
Commits
448dc425
Commit
448dc425
authored
Mar 17, 2012
by
Ronald S. Bultje
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
cabac: increment jump locations by one in callers of BRANCHLESS_GET_CABAC().
parent
16f6e83f
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
12 additions
and
12 deletions
+12
-12
h264_i386.h
libavcodec/x86/h264_i386.h
+12
-12
No files found.
libavcodec/x86/h264_i386.h
View file @
448dc425
...
@@ -46,13 +46,13 @@ static int decode_significance_x86(CABACContext *c, int max_coeff,
...
@@ -46,13 +46,13 @@ static int decode_significance_x86(CABACContext *c, int max_coeff,
int
bit
;
int
bit
;
x86_reg
coeff_count
;
x86_reg
coeff_count
;
__asm__
volatile
(
__asm__
volatile
(
"
2
:
\n\t
"
"
3
:
\n\t
"
BRANCHLESS_GET_CABAC
(
"%4"
,
"(%1)"
,
"%3"
,
"%w3"
,
BRANCHLESS_GET_CABAC
(
"%4"
,
"(%1)"
,
"%3"
,
"%w3"
,
"%5"
,
"%k0"
,
"%b0"
,
"%a11(%6)"
)
"%5"
,
"%k0"
,
"%b0"
,
"%a11(%6)"
)
"test $1, %4
\n\t
"
"test $1, %4
\n\t
"
" jz
3
f
\n\t
"
" jz
4
f
\n\t
"
"add %10, %1
\n\t
"
"add %10, %1
\n\t
"
BRANCHLESS_GET_CABAC
(
"%4"
,
"(%1)"
,
"%3"
,
"%w3"
,
BRANCHLESS_GET_CABAC
(
"%4"
,
"(%1)"
,
"%3"
,
"%w3"
,
...
@@ -65,19 +65,19 @@ static int decode_significance_x86(CABACContext *c, int max_coeff,
...
@@ -65,19 +65,19 @@ static int decode_significance_x86(CABACContext *c, int max_coeff,
"movl %%ecx, (%0)
\n\t
"
"movl %%ecx, (%0)
\n\t
"
"test $1, %4
\n\t
"
"test $1, %4
\n\t
"
" jnz
4
f
\n\t
"
" jnz
5
f
\n\t
"
"add"
OPSIZE
" $4, %2
\n\t
"
"add"
OPSIZE
" $4, %2
\n\t
"
"
3
:
\n\t
"
"
4
:
\n\t
"
"add $1, %1
\n\t
"
"add $1, %1
\n\t
"
"cmp %8, %1
\n\t
"
"cmp %8, %1
\n\t
"
" jb
2
b
\n\t
"
" jb
3
b
\n\t
"
"mov %2, %0
\n\t
"
"mov %2, %0
\n\t
"
"movl %7, %%ecx
\n\t
"
"movl %7, %%ecx
\n\t
"
"add %1, %%"
REG_c
"
\n\t
"
"add %1, %%"
REG_c
"
\n\t
"
"movl %%ecx, (%0)
\n\t
"
"movl %%ecx, (%0)
\n\t
"
"
4
:
\n\t
"
"
5
:
\n\t
"
"add %9, %k0
\n\t
"
"add %9, %k0
\n\t
"
"shr $2, %k0
\n\t
"
"shr $2, %k0
\n\t
"
:
"=&q"
(
coeff_count
),
"+r"
(
significant_coeff_ctx_base
),
"+m"
(
index
),
:
"=&q"
(
coeff_count
),
"+r"
(
significant_coeff_ctx_base
),
"+m"
(
index
),
...
@@ -99,7 +99,7 @@ static int decode_significance_8x8_x86(CABACContext *c,
...
@@ -99,7 +99,7 @@ static int decode_significance_8x8_x86(CABACContext *c,
x86_reg
state
;
x86_reg
state
;
__asm__
volatile
(
__asm__
volatile
(
"mov %1, %6
\n\t
"
"mov %1, %6
\n\t
"
"
2
:
\n\t
"
"
3
:
\n\t
"
"mov %10, %0
\n\t
"
"mov %10, %0
\n\t
"
"movzbl (%0, %6), %k6
\n\t
"
"movzbl (%0, %6), %k6
\n\t
"
...
@@ -110,7 +110,7 @@ static int decode_significance_8x8_x86(CABACContext *c,
...
@@ -110,7 +110,7 @@ static int decode_significance_8x8_x86(CABACContext *c,
"mov %1, %k6
\n\t
"
"mov %1, %k6
\n\t
"
"test $1, %4
\n\t
"
"test $1, %4
\n\t
"
" jz
3
f
\n\t
"
" jz
4
f
\n\t
"
"movzbl "
MANGLE
(
last_coeff_flag_offset_8x8
)
"(%k6), %k6
\n\t
"
"movzbl "
MANGLE
(
last_coeff_flag_offset_8x8
)
"(%k6), %k6
\n\t
"
"add %11, %6
\n\t
"
"add %11, %6
\n\t
"
...
@@ -123,18 +123,18 @@ static int decode_significance_8x8_x86(CABACContext *c,
...
@@ -123,18 +123,18 @@ static int decode_significance_8x8_x86(CABACContext *c,
"movl %k6, (%0)
\n\t
"
"movl %k6, (%0)
\n\t
"
"test $1, %4
\n\t
"
"test $1, %4
\n\t
"
" jnz
4
f
\n\t
"
" jnz
5
f
\n\t
"
"add"
OPSIZE
" $4, %2
\n\t
"
"add"
OPSIZE
" $4, %2
\n\t
"
"
3
:
\n\t
"
"
4
:
\n\t
"
"addl $1, %k6
\n\t
"
"addl $1, %k6
\n\t
"
"mov %k6, %1
\n\t
"
"mov %k6, %1
\n\t
"
"cmpl $63, %k6
\n\t
"
"cmpl $63, %k6
\n\t
"
" jb
2
b
\n\t
"
" jb
3
b
\n\t
"
"mov %2, %0
\n\t
"
"mov %2, %0
\n\t
"
"movl %k6, (%0)
\n\t
"
"movl %k6, (%0)
\n\t
"
"
4
:
\n\t
"
"
5
:
\n\t
"
"addl %8, %k0
\n\t
"
"addl %8, %k0
\n\t
"
"shr $2, %k0
\n\t
"
"shr $2, %k0
\n\t
"
:
"=&q"
(
coeff_count
),
"+m"
(
last
),
"+m"
(
index
),
"+&r"
(
c
->
low
),
:
"=&q"
(
coeff_count
),
"+m"
(
last
),
"+m"
(
index
),
"+&r"
(
c
->
low
),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment