Ran
|
Jobs
1
|
Files
89
|
Run time
1min
|
Badge
README BADGES
|
push
github
FFI: Fix 64 bit shift fold rules. Thanks to Peter Cawley. (cherry picked from commit 9e0437240) For `IR_BSHR`, `IR_BROL`, `IR_BROR` during `kfold_int64arith()` the left argument is truncated down to 32 bits, which leads to incorrect results if the right argument is >= 32. Also, `IR_BSAR` does an unsigned shift rather than a signed shift, but since this case branch is unreachable, it is harmless for now. This patch fixes all misbehaviours (including possible for `IR_BSAR`) to preserve IR semantics. Sergey Kaplun: * added the description and the test for the problem Part of tarantool/tarantool#10199
5684 of 6026 branches covered (94.32%)
Branch coverage included in aggregate %.
21679 of 23431 relevant lines covered (92.52%)
2955813.61 hits per line
Lines | Coverage | ∆ | File |
---|---|---|---|
1 |
78.34 |
0.0% | src/lj_opt_fold.c |
ID | Job ID | Ran | Files | Coverage | |
---|---|---|---|---|---|
1 | 11139957939.1 | 89 |
92.89 |
GitHub Action Run |
Coverage | ∆ | File | Lines | Relevant | Covered | Missed | Hits/Line | Branch Hits | Branch Misses |
---|---|---|---|---|---|---|---|---|---|
13.79 | src/lj_utils_leb128.c | 132 | 51 | 7 | 44 | 1847897.0 + 354 | 1 | 6 | |
61.83 | src/lj_clib.c | 431 | 101 | 65 | 36 | 4081.0 + 78 | 16 | 14 | |
77.8 | src/lj_api.c | 1369 | 860 | 665 | 195 | 918355.0 - 417 | 183 | 47 | |
77.92 | src/lj_wbuf.c | 141 | 66 | 49 | 17 | 646468.0 + 83 | 11 | 0 | |
78.34 | src/lj_opt_fold.c | 2542 | 977 | 751 | 226 | 826068.0 + 31424 | 247 | 50 | |
78.75 | src/lib_math.c | 224 | 72 | 56 | 16 | 20805.0 + 3 | 7 | 1 | |
84.03 | src/lj_ccall.c | 1183 | 172 | 145 | 27 | 31572.0 + 692 | 55 | 11 | |
84.21 | src/lj_load.c | 164 | 81 | 69 | 12 | 30831.0 - 47 | 11 | 3 | |
86.84 | src/lj_vmevent.c | 57 | 31 | 27 | 4 | 18742.0 - 5 | 6 | 1 | |
87.21 | src/lib_jit.c | 771 | 323 | 283 | 40 | 414.0 - 2 | 58 | 10 |