| Age | Commit message (Collapse) | Author |
|
|
|
the non VSC case)
|
|
|
|
Addition flag array such that colflags[1+0] is for state of col=0,row=0..3,
colflags[1+1] for col=1, row=0..3, colflags[1+flags_stride] for col=0,row=4..7, ...
This array avoids too much cache trashing when processing by 4 vertical samples
as done in the various decoding steps.
|
|
|
|
This is essentially used to shift inside the lut_ctxno_zc, which we
can precompute at the beginning of opj_t1_decode_cblk() /
opj_t1_encode_cblk()
|
|
|
|
Add a opj_t1_dec_clnpass_step_only_if_flag_not_sig_visit() method that
does the job of opj_t1_dec_clnpass_step_only() assuming the conditions
are met. And use it in opj_t1_dec_clnpass(). The compiler generates
more efficient code.
|
|
We can avoid using a loop-up table with some shift arithmetics.
|
|
Allow these hot functions to be inlined. This boosts decode performance by ~10%.
|
|
|
|
They all need opj_malloc and other functions from opc_malloc.c.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
Fix uclouvain/openjpeg#775
|
|
Fix uclouvain/openjpeg#733
|
|
Inspired from https://github.com/InsightSoftwareConsortium/ITK/blob/master/Utilities/Maintenance/HowToCreateTheCMakeCaseConversion.txt
This needs vim 7.3 and fails with vim 7.4
This also fixes a number of :
- missing empty line at end of files
- useless space at end of lines
|
|
|
|
Fix issue 135
The fix is legal regarding the standard but I did not manage to find out if it covers a bug in opj_t2_read_packet_data or if the file is corrupted
|
|
|
|
|
|
|
|
|
|
* Fix unsigned int overflow reported by UBSan
Please add -DOPJ_UBSAN_BUILD to CFLAGS when building with
-fsanitize=undefined,unsigned-integer-overflow
It seems clang/gcc do not allow to disable checking for block of code
other than function or file.
|
|
|
|
|
|
dwt_interleave_h.gsr105.jp2 now has the same output as kakadu
issue399 is corrupted. Only the corrupted part changes.
Update known failures for x86 MD5
NR-DEC-kodak_2layers_lrcp.j2c-31-decode-md5
NR-DEC-kodak_2layers_lrcp.j2c-32-decode-md5
NR-DEC-issue135.j2k-68-decode-md5
|
|
Follow-up of #757
This shall have no performance impact on 2’s complement machine where
the compiler replaces the multiplication by power of two (constant) by
a left shift.
Verified at least on MacOS Xcode 7.3, same assembly generated after fix.
|
|
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
This shall have no performance impact on 2’s complement machine where
the compiler replaces the multiplication by power of two (constant) by
a left shift.
Verified at least on MacOS Xcode 7.3, same assembly generated after fix.
|
|
Fix #727
|
|
issue #695 MQ Encode: ensure that bp pointer never points to uninitialized memory
|
|
Also reorder initialization to follow declaration order
|
|
|
|
memory
|
|
Fixes #245
|
|
Fix support of posix_memalloc for Linux
|
|
Add COC/QCC in main header when needed
|
|
|
|
When trying the GDAL OpenJPEG driver against openjpeg current master HEAD,
I get failures when trying to create .jp2 files. The driver uses
opj_write_tile() and in some tests numresolutions = 1.
In openjp2/dwt.c:410, l_data_size = opj_dwt_max_resolution( tilec->resolutions,tilec->numresolutions) * (OPJ_UINT32)sizeof(OPJ_INT32);
is called and returns l_data_size = 0. Now in git opj_malloc() has a special case
for 0 to return a NULL pointer whereas previously it relied on system malloc(),
which in my case didn't return NULL.
So only test the pointer value if l_data_size != 0. This makes the GDAL
autotest suite to pass again.
|
|
By default, OpenJPEG uses the function memalign to allocate aligned
memory on Linux systems. That function needs malloc.h which was
missing. This results in a compiler warning:
openjpeg/src/lib/openjp2/opj_malloc.c:63:3: warning:
implicit declaration of function ‘memalign’
[-Wimplicit-function-declaration]
On hosts where sizeof(int) < sizeof(void *) the return value of memalign
will be truncated which results in an invalid pointer.
That caused "make test" to produce lots of segmentation faults when
running on a 64 bit Linux host.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
Some lines ended with spaces. Remove them.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
posix_memalign is only declared conditionally in stdlib.h,
so add one of the possible definitions to get the declaration.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
|
|
Update #653
|
|
|
|
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
|
|
|
|
|
Update #642
|