summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'wip-warnings-v2' into 'v2'v2KMG2015-09-037-43/+44
|\ | | | | | | | | | | add -Wsign-compare and address the warnings See merge request !13
| * add -Wsign-compare and address the warningsLoic Dachary2015-09-027-38/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * (1 << w) are changed into ((uint32_t)1 << w) * int are changed into uint32_t gf.c: gf_composite_get_default_poly: a larger unsigned were assigned to unsigned integers in which case the type of the assigned variable is changed to be the same as the value assigned to it. gf_w16.c: GF_MULTBY_TWO setting the parameter to a variable instead of passing the expression resolves the warning for some reason. Signed-off-by: Loic Dachary <loic@dachary.org> (cherry picked from commit d1b6bbf706b2628ab21cee2eb51a7cfe8cf04bcd)
| * gf_w64.c: fix integer overflowDanny Al-Gaaf2015-09-021-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for Coverity issue (from Ceph): CID 1193089 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) overflow_before_widen: Potentially overflowing expression 1 << g_r with type int (32 bits, signed) is evaluated using 32-bit arithmetic, and then used in a context that expects an expression of type uint64_t (64 bits, unsigned). CID 1193090 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) overflow_before_widen: Potentially overflowing expression 1 << g_s with type int (32 bits, signed) is evaluated using 32-bit arithmetic, and then used in a context that expects an expression of type uint64_t (64 bits, unsigned). Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de> (cherry picked from commit 2f6db512fb83f2d8e84e8097ebd2595c6ec8f8eb)
| * gf_w64.c: fix integer overflowDanny Al-Gaaf2015-09-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix for Coverity issue (from Ceph): CID 1193088 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) overflow_before_widen: Potentially overflowing expression 1 << g_s with type int (32 bits, signed) is evaluated using 32-bit arithmetic, and then used in a context that expects an expression of type uint64_t (64 bits, unsigned). Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de> (cherry picked from commit 1aef8694bc62a053e35cc1c74c67f1d15d8d1b6a)
| * gf_w64.c: fix integer overflowDanny Al-Gaaf2015-09-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix for Coverity issue (from Ceph): CID 1193087 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) overflow_before_widen: Potentially overflowing expression 1 << g_r with type int (32 bits, signed) is evaluated using 32-bit arithmetic, and then used in a context that expects an expression of type uint64_t (64 bits, unsigned). Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de> (cherry picked from commit e127bb1fb9b1025094a0e0ce50d2e44c38c4e97f)
| * gf_w64.c: fix integer overflowDanny Al-Gaaf2015-09-021-1/+1
|/ | | | | | | | | | | | Fix for Coverity issue (from Ceph): CID 1193086 (#1 of 1): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) overflow_before_widen: Potentially overflowing expression 1 << g_r with type int (32 bits, signed) is evaluated using 32-bit arithmetic, and then used in a context that expects an expression of type uint64_t (64 bits, unsigned). Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de> (cherry picked from commit 98e5e37159f4c7634305aa65c9bc98a36488a4a9)
* Merge branch 'wip-exit-v2' into 'v2'v2.0KMG2015-01-083-8/+11
|\ | | | | | | | | | | | | | | use assert instead of exit the previous merge request was incorrectly against master. It now is twice in master which is not a problem but it's not in v2. See merge request !5
| * use assert(0) instead of exit(1)Loic Dachary2014-12-153-8/+11
| | | | | | | | | | | | | | | | | | | | | | When a fatal error (unaligned memory etc.) is detected, gf-complete should assert(3) instead of exit(3) to give a chance to the calling program to catch the exception and display a stack trace. Although it is possible for gdb to display the stack trace and break on exit, libraries are not usually expected to terminate the calling program in this way. Signed-off-by: Loic Dachary <loic@dachary.org> (cherry picked from commit 29427efac2ce362fce8e4f5f5f1030feba942b73)
* | Merge branch 'wip-dirstamp-ignore-v2' into 'v2'KMG2015-01-081-0/+1
|\ \ | |/ |/| | | | | | | dirstamp ignore v2 See merge request !7
| * gitignore: add src/.dirstampGreg Farnum2015-01-081-0/+1
|/ | | | | Signed-off-by: Greg Farnum <gfarnum@redhat.com> (cherry picked from commit 79f34a1b461d6449c9b11577b1522a696880cfaf)
* Merged in jannau/gf-complete/neon (pull request #25) Kevin Greenan2014-10-2430-405/+2253
|\ | | | | arm neon optimisations
| * arm: NEON optimisations for gf_w64Janne Grunau2014-10-244-37/+400
| | | | | | | | | | Optimisations for 4,64 split table region multiplications. Only used on ARMv8-A since it is not faster on ARMv7-A.
| * arm: NEON optimisations for gf_w32Janne Grunau2014-10-244-57/+358
| | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for 4,32 split table multiplications. Selected time_tool.sh results on a 1.7 GHz cortex-a9: Region Best (MB/s): 346.67 W-Method: 32 -m SPLIT 32 4 -r SIMD - Region Best (MB/s): 92.89 W-Method: 32 -m SPLIT 32 4 -r NOSIMD - Region Best (MB/s): 258.17 W-Method: 32 -m SPLIT 32 4 -r SIMD -r ALTMAP - Region Best (MB/s): 162.00 W-Method: 32 -m SPLIT 32 8 - Region Best (MB/s): 160.53 W-Method: 32 -m SPLIT 8 8 - Region Best (MB/s): 32.74 W-Method: 32 -m COMPOSITE 2 - - Region Best (MB/s): 199.79 W-Method: 32 -m COMPOSITE 2 - -r ALTMAP -
| * arm: NEON optimisations for gf_w16Janne Grunau2014-10-244-51/+435
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for the 4,16 split table region multiplications. Selected time_tool.sh 16 -A -B results for a 1.7 GHz cortex-a9: Region Best (MB/s): 532.14 W-Method: 16 -m SPLIT 16 4 -r SIMD - Region Best (MB/s): 212.34 W-Method: 16 -m SPLIT 16 4 -r NOSIMD - Region Best (MB/s): 801.36 W-Method: 16 -m SPLIT 16 4 -r SIMD -r ALTMAP - Region Best (MB/s): 93.20 W-Method: 16 -m SPLIT 16 4 -r NOSIMD -r ALTMAP - Region Best (MB/s): 273.99 W-Method: 16 -m SPLIT 16 8 - Region Best (MB/s): 270.81 W-Method: 16 -m SPLIT 8 8 - Region Best (MB/s): 70.42 W-Method: 16 -m COMPOSITE 2 - - Region Best (MB/s): 393.54 W-Method: 16 -m COMPOSITE 2 - -r ALTMAP -
| * arm: NEON optimisations for gf_w8Janne Grunau2014-10-245-89/+428
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for the 4,4 split table region multiplication and carry less multiplication using NEON's polynomial long multiplication. arm: w8: NEON carry less multiplication Selected time_tool.sh results for a 1.7GHz cortex-a9: Region Best (MB/s): 375.86 W-Method: 8 -m CARRY_FREE - Region Best (MB/s): 142.94 W-Method: 8 -m TABLE - Region Best (MB/s): 225.01 W-Method: 8 -m TABLE -r DOUBLE - Region Best (MB/s): 211.23 W-Method: 8 -m TABLE -r DOUBLE -r LAZY - Region Best (MB/s): 160.09 W-Method: 8 -m LOG - Region Best (MB/s): 123.61 W-Method: 8 -m LOG_ZERO - Region Best (MB/s): 123.85 W-Method: 8 -m LOG_ZERO_EXT - Region Best (MB/s): 1183.79 W-Method: 8 -m SPLIT 8 4 -r SIMD - Region Best (MB/s): 177.68 W-Method: 8 -m SPLIT 8 4 -r NOSIMD - Region Best (MB/s): 87.85 W-Method: 8 -m COMPOSITE 2 - - Region Best (MB/s): 428.59 W-Method: 8 -m COMPOSITE 2 - -r ALTMAP -
| * arm: NEON optimisations for gf_w4Janne Grunau2014-10-244-50/+335
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimisations for the single table region multiplication and carry less multiplication using NEON's polynomial multiplication of 8-bit values. The single polynomial multiplication is not that useful but vector version is for region multiplication. Selected time_tool.sh results for a 1.7GHz cortex-a9: Region Best (MB/s): 672.72 W-Method: 4 -m CARRY_FREE - Region Best (MB/s): 265.84 W-Method: 4 -m BYTWO_p - Region Best (MB/s): 329.41 W-Method: 4 -m TABLE -r DOUBLE - Region Best (MB/s): 278.63 W-Method: 4 -m TABLE -r QUAD - Region Best (MB/s): 329.81 W-Method: 4 -m TABLE -r QUAD -r LAZY - Region Best (MB/s): 1318.03 W-Method: 4 -m TABLE -r SIMD - Region Best (MB/s): 165.15 W-Method: 4 -m TABLE -r NOSIMD - Region Best (MB/s): 99.73 W-Method: 4 -m LOG -
| * arm: NEON optimisations for XOR in gf_multby_oneJanne Grunau2014-10-091-0/+35
| |
| * use posix_memalign to align memory for SIMD region testsJanne Grunau2014-10-093-13/+66
| | | | | | | | Properly emulate aligned allocation if posix_memalign is not available.
| * configure: add ARM/AArch64 NEON supportJanne Grunau2014-10-093-0/+74
| | | | | | | | Checks for arm_neon.h header.
| * simd: rename the region flags from SSE to SIMDJanne Grunau2014-10-0911-90/+99
| | | | | | | | | | SSE is not the only supported SIMD instruction set. Keep the old names for backward compatibility.
| * check: split unit tests and support paralell executionJanne Grunau2014-10-093-12/+17
| |
| * build: fix out of source tree buildJanne Grunau2014-10-094-8/+8
| |
| * build: make CFLAGS user setableJanne Grunau2014-10-091-3/+3
|/ | | | | There is no need to force the non-default CFLAGS on users trying to set them via enviroment variable or on configure command.
* Merged in dachary/gf-complete/wip-static-code-analysis (pull request #24) Kevin Greenan2014-10-032-2/+1
|\ | | | | static code analysis fixes
| * remove dead code in create_gf_from_argvLoic Dachary2014-09-171-1/+0
| | | | | | | | | | | | | | | | Since there can only be one -m, base cannot be set by -m COMPOSITE and then deallocated on the second -m if it is bugous. The second -m will exit on error at _gf_errno = GF_E_TWOMULT;. Signed-off-by: Loic Dachary <loic-201408@dachary.org>
| * disable gf_error_check test that requires >> 64Loic Dachary2014-09-171-1/+1
|/ | | | | | Because >> 64 does not have a defined behavior. Signed-off-by: Loic Dachary <loic-201408@dachary.org>
* Merged in beol/gf-complete (pull request #23) Kevin Greenan2014-08-231-1/+6
|\ | | | | On CPU that doesn't support SSE4.2 instructions set, this will fail
| * On CPU that doesn't support SSE4.2 instructions set, this will failLeo Laksmana2014-08-231-1/+6
|/ | | | | | | because incorrect header is included. smmintrin.h => SSE4.1 nmmintrin.h => SSE4.2
* Removed comments marking CARRY_FREE_GK additions.Adam Disney2014-06-165-12/+2
|
* Merge remote-tracking branch 'dalgaaf/wip-da-sca-20140513'Adam Disney2014-06-169-37/+37
|\
| * gf_w32.c: remove dead assignment with no effectDanny Al-Gaaf2014-05-141-1/+0
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_time.c: remove dead assignment to 'elapsed'Danny Al-Gaaf2014-05-141-2/+0
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w32.c: fix/remove some dead assignmentsDanny Al-Gaaf2014-05-141-8/+4
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w16.c: fix/remove some dead assignmentsDanny Al-Gaaf2014-05-141-2/+2
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w128.c: remove some dead assignmentsDanny Al-Gaaf2014-05-141-3/+0
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w8.c: fix dead assignment report from scan-buildDanny Al-Gaaf2014-05-141-1/+2
| | | | | | | | | | | | Fix dead assignment in case of INTEL_SSSE3 defined. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w64.c: remove dead assignments and unused variable 'm2'Danny Al-Gaaf2014-05-141-3/+1
| | | | | | | | | | | | | | The 'm2' variable in gf_w64_clm_multiply_region_from_single_2() isn't used except for calculations on 'm2' which are not used later in the code. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w64.c: remove dead assigments in gf_w64_shift_multiply()Danny Al-Gaaf2014-05-141-3/+0
| | | | | | | | | | | | | | These assigments are never used and directly overwritten later in the function. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * tools/gf_poly.c: fix undefined allocation of 0 bytesDanny Al-Gaaf2014-05-141-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to man page of malloc the behaviour in case of allocation size of 0 bytes is undefined: "If size was equal to 0, either NULL or a pointer suitable to be passed to free() is returned" Fix for clang scan-build report: Unix API Undefined allocation of 0 bytes (CERT MEM04-C; CWE-131) 210 poly = (gf_general_t *) malloc(sizeof(gf_general_t)*(n+1)); 9 Call to 'malloc' has an allocation size of 0 bytes Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_w32.c: fix dereference of undefined pointer valueDanny Al-Gaaf2014-05-131-1/+1
| | | | | | | | | | | | Check for array boundaries of 't' in while loop header. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * test/gf_unit.c: free memory after usageDanny Al-Gaaf2014-05-131-7/+13
| | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * gf_inline_time.c: fix memory leakDanny Al-Gaaf2014-05-131-4/+6
| | | | | | | | | | | | | | | | Free all with malloc allocated memory before exit. Change if checks against 'w' to be a if-else check to prevent checking after already matched. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
* | Fixed a few minor warnings when running autogen.sh.Adam Disney2014-06-165-20/+8
| |
* | Merge remote-tracking branch 'jayrde/wip-autoconf-cleanup'Adam Disney2014-06-1623-42961/+69
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .gitignore INSTALL Makefile.in aclocal.m4 config.guess config.sub configure examples/Makefile.in include/config.h.in include/config.h.in~ install-sh ltmain.sh m4/libtool.m4 m4/ltversion.m4 missing src/Makefile.in test/Makefile.in tools/Makefile.in
| * | ignore more library files and eecutablesJens Rosenboom2014-03-181-1/+21
| | |
| * | fixup AM_INIT_AUTOMAKE callJens Rosenboom2014-03-181-1/+1
| | |
| * | add autogen.sh call to READMEJens Rosenboom2014-03-181-0/+1
| | |
| * | cleanup unused flag leftover from commit fb0bbdcfJens Rosenboom2014-03-181-4/+0
| | |
| * | Merge branch 'wip-autoconf-cleanup' of ↵Jens Rosenboom2014-03-180-0/+0
| |\ \ | | | | | | | | | | | | https://bitbucket.org/jayrde/gf-complete into wip-autoconf-cleanup
| | * | Created new branch wip-autoconf-cleanupJens Rosenboom2014-03-180-0/+0
| | | |