Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Xiph.Org
aom-rav1e
Commits
83e8f2f9
Commit
83e8f2f9
authored
Nov 09, 2012
by
John Koleszar
Committed by
Gerrit Code Review
Nov 09, 2012
Browse files
Merge "use calloc() instead of malloc()"
parents
7ebcaeb0
0a3eec86
Changes
1
Hide whitespace changes
Inline
Side-by-side
vp8/decoder/threading.c
View file @
83e8f2f9
...
...
@@ -29,6 +29,13 @@
#include
"error_concealment.h"
#endif
#define CALLOC_ARRAY(p, n) CHECK_MEM_ERROR((p), vpx_calloc(sizeof(*(p)), (n)))
#define CALLOC_ARRAY_ALIGNED(p, n, algn) do { \
CHECK_MEM_ERROR((p), vpx_memalign((algn), sizeof(*(p)) * (n))); \
memset((p), 0, (n) * sizeof(*(p))); \
} while (0)
extern
void
vp8_mb_init_dequantizer
(
VP8D_COMP
*
pbi
,
MACROBLOCKD
*
xd
);
static
void
setup_decoding_thread_data
(
VP8D_COMP
*
pbi
,
MACROBLOCKD
*
xd
,
MB_ROW_DEC
*
mbrd
,
int
count
)
...
...
@@ -668,11 +675,10 @@ void vp8_decoder_create_threads(VP8D_COMP *pbi)
pbi
->
b_multithreaded_rd
=
1
;
pbi
->
decoding_thread_count
=
core_count
-
1
;
CHECK_MEM_ERROR
(
pbi
->
h_decoding_thread
,
vpx_malloc
(
sizeof
(
pthread_t
)
*
pbi
->
decoding_thread_count
));
CHECK_MEM_ERROR
(
pbi
->
h_event_start_decoding
,
vpx_malloc
(
sizeof
(
sem_t
)
*
pbi
->
decoding_thread_count
));
CHECK_MEM_ERROR
(
pbi
->
mb_row_di
,
vpx_memalign
(
32
,
sizeof
(
MB_ROW_DEC
)
*
pbi
->
decoding_thread_count
));
vpx_memset
(
pbi
->
mb_row_di
,
0
,
sizeof
(
MB_ROW_DEC
)
*
pbi
->
decoding_thread_count
);
CHECK_MEM_ERROR
(
pbi
->
de_thread_data
,
vpx_malloc
(
sizeof
(
DECODETHREAD_DATA
)
*
pbi
->
decoding_thread_count
));
CALLOC_ARRAY
(
pbi
->
h_decoding_thread
,
pbi
->
decoding_thread_count
);
CALLOC_ARRAY
(
pbi
->
h_event_start_decoding
,
pbi
->
decoding_thread_count
);
CALLOC_ARRAY_ALIGNED
(
pbi
->
mb_row_di
,
pbi
->
decoding_thread_count
,
32
);
CALLOC_ARRAY
(
pbi
->
de_thread_data
,
pbi
->
decoding_thread_count
);
for
(
ithread
=
0
;
ithread
<
pbi
->
decoding_thread_count
;
ithread
++
)
{
...
...
@@ -796,32 +802,32 @@ void vp8mt_alloc_temp_buffers(VP8D_COMP *pbi, int width, int prev_mb_rows)
uv_width
=
width
>>
1
;
/* Allocate an int for each mb row. */
C
HECK_MEM_ERROR
(
pbi
->
mt_current_mb_col
,
vpx_malloc
(
sizeof
(
int
)
*
pc
->
mb_rows
)
)
;
C
ALLOC_ARRAY
(
pbi
->
mt_current_mb_col
,
pc
->
mb_rows
);
/* Allocate memory for above_row buffers. */
C
HECK_MEM_ERROR
(
pbi
->
mt_yabove_row
,
vpx_malloc
(
sizeof
(
unsigned
char
*
)
*
pc
->
mb_rows
)
)
;
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
C
ALLOC_ARRAY
(
pbi
->
mt_yabove_row
,
pc
->
mb_rows
);
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
CHECK_MEM_ERROR
(
pbi
->
mt_yabove_row
[
i
],
vpx_memalign
(
16
,
sizeof
(
unsigned
char
)
*
(
width
+
(
VP8BORDERINPIXELS
<<
1
))));
C
HECK_MEM_ERROR
(
pbi
->
mt_uabove_row
,
vpx_malloc
(
sizeof
(
unsigned
char
*
)
*
pc
->
mb_rows
)
)
;
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
C
ALLOC_ARRAY
(
pbi
->
mt_uabove_row
,
pc
->
mb_rows
);
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
CHECK_MEM_ERROR
(
pbi
->
mt_uabove_row
[
i
],
vpx_memalign
(
16
,
sizeof
(
unsigned
char
)
*
(
uv_width
+
VP8BORDERINPIXELS
)));
C
HECK_MEM_ERROR
(
pbi
->
mt_vabove_row
,
vpx_malloc
(
sizeof
(
unsigned
char
*
)
*
pc
->
mb_rows
)
)
;
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
C
ALLOC_ARRAY
(
pbi
->
mt_vabove_row
,
pc
->
mb_rows
);
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
CHECK_MEM_ERROR
(
pbi
->
mt_vabove_row
[
i
],
vpx_memalign
(
16
,
sizeof
(
unsigned
char
)
*
(
uv_width
+
VP8BORDERINPIXELS
)));
/* Allocate memory for left_col buffers. */
C
HECK_MEM_ERROR
(
pbi
->
mt_yleft_col
,
vpx_malloc
(
sizeof
(
unsigned
char
*
)
*
pc
->
mb_rows
)
)
;
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
C
ALLOC_ARRAY
(
pbi
->
mt_yleft_col
,
pc
->
mb_rows
);
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
CHECK_MEM_ERROR
(
pbi
->
mt_yleft_col
[
i
],
vpx_calloc
(
sizeof
(
unsigned
char
)
*
16
,
1
));
C
HECK_MEM_ERROR
(
pbi
->
mt_uleft_col
,
vpx_malloc
(
sizeof
(
unsigned
char
*
)
*
pc
->
mb_rows
)
)
;
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
C
ALLOC_ARRAY
(
pbi
->
mt_uleft_col
,
pc
->
mb_rows
);
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
CHECK_MEM_ERROR
(
pbi
->
mt_uleft_col
[
i
],
vpx_calloc
(
sizeof
(
unsigned
char
)
*
8
,
1
));
C
HECK_MEM_ERROR
(
pbi
->
mt_vleft_col
,
vpx_malloc
(
sizeof
(
unsigned
char
*
)
*
pc
->
mb_rows
)
)
;
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
C
ALLOC_ARRAY
(
pbi
->
mt_vleft_col
,
pc
->
mb_rows
);
for
(
i
=
0
;
i
<
pc
->
mb_rows
;
i
++
)
CHECK_MEM_ERROR
(
pbi
->
mt_vleft_col
[
i
],
vpx_calloc
(
sizeof
(
unsigned
char
)
*
8
,
1
));
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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