• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / luajit / 5973601545
93%

Build:
DEFAULT BRANCH: tarantool/master
Ran 25 Aug 2023 08:22AM UTC
Jobs 1
Files 89
Run time 3s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

25 Aug 2023 08:22AM UTC coverage: 88.113% (+0.2%) from 87.9%
5973601545

push

github

igormunkin
Revert to trival pow() optimizations to prevent inaccuracies.

(cherry-picked from commit 96d6d5032)

This patch fixes different misbehaviours between JIT-compiled code and
the interpreter for power operator in the following ways:
* Drop folding optimizations for base ^ n => base * base ..., as far as
  pow(base, n) isn't interchangeable with just multiplicity of numbers
  and depends on the <math.h> implementation.
* Since the internal power function is inaccurate for very big or small
  powers, it is dropped, and `pow()` from the standard library is used
  instead. To save consistency between JIT behaviour and the VM,
  narrowing optimization is dropped, and only trivial folding
  optimizations are used. Also, `math_extern2` version with two
  parameters is dropped, since it's no longer used.

Also, this fixes failures of the [220/502] lib/string/format/num.lua
test [1] from the LuaJIT-test suite.

[1]: https://www.exploringbinary.com/incorrect-floating-point-to-decimal-conversions/

Sergey Kaplun:
* added the description and the test for the problem

Part of tarantool/tarantool#8825

Reviewed-by: Maxim Kokryashkin <m.kokryashkin@tarantool.org>
Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org>
Signed-off-by: Igor Munkin <imun@tarantool.org>

5322 of 5963 branches covered (0.0%)

Branch coverage included in aggregate %.

11 of 11 new or added lines in 5 files covered. (100.0%)

20443 of 23278 relevant lines covered (87.82%)

1292502.03 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
75.77
1.54% src/lj_opt_fold.c
2
89.14
-1.64% src/lj_ffrecord.c

Uncovered Existing Lines

Lines Coverage ∆ File
1
99.22
0.01% src/lj_func.c
1
94.74
2.43% src/lj_vmmath.c
3
61.83
0.0% src/lj_clib.c
3
98.67
0.0% src/lj_lex.c
4
88.89
0.04% src/lj_emit_x86.h
4
94.74
0.0% src/lj_str.c
4
89.67
0.0% src/lj_symtab.c
4
98.73
0.0% src/lj_tab.c
5
95.55
0.0% src/lj_opt_loop.c
7
95.93
0.0% src/lib_io.c
7
98.84
-0.06% src/lj_gc.c
7
99.56
-0.0% src/lj_parse.c
8
95.69
0.0% src/lj_state.c
9
89.14
-1.64% src/lj_ffrecord.c
10
97.11
0.01% src/lj_snap.c
10
84.89
2.67% src/lj_sysprof.c
10
76.62
0.0% src/lj_wbuf.c
12
97.77
0.0% src/lj_trace.c
13
88.17
0.0% src/lj_memprof.c
15
76.47
0.13% src/lj_ccallback.c
15
83.61
0.0% src/lj_ctype.c
16
92.76
0.0% src/lj_ir.c
17
89.45
0.0% src/lj_debug.c
17
89.09
0.0% src/lj_err.c
17
93.87
0.0% src/lj_opt_mem.c
21
79.91
0.09% src/lj_cdata.c
24
70.38
0.0% src/lj_carith.c
25
13.79
0.0% src/lj_utils_leb128.c
28
78.15
-0.36% src/lj_ccall.c
32
96.0
2.15% src/lj_asm.c
68
95.62
-0.11% src/lj_record.c
85
64.75
0.0% src/lj_cconv.c
97
92.68
1.16% src/lj_asm_x86.h
146
72.05
-0.17% src/lj_crecord.c
182
73.0
-0.32% src/lj_api.c
194
75.77
1.54% src/lj_opt_fold.c
224
61.83
0.0% src/lj_cparse.c
Jobs
ID Job ID Ran Files Coverage
1 5973601545.1 25 Aug 2023 08:22AM UTC 89
88.11
GitHub Action Run
Source Files on build 5973601545
  • Tree
  • List 89
  • Changed 88
  • Source Changed 0
  • Coverage Changed 50
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #5973601545
  • 7c959243 on github
  • Prev Build on tarantool/master (#5942561862)
  • Next Build on tarantool/master (#5999839971)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc