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

gap-system / gap / 8918
4%

Build:
DEFAULT BRANCH: master
Ran 14 Jan 2019 10:25PM UTC
Jobs 7
Files 585
Run time 18min
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

pending completion
8918

push

travis-ci

fingolfin
kernel: change coding of integers, strings, eager floats

When coding GAP function bodies, we now have an (optional) plist in the
function body of (immutable) values. Instead of storing the raw data
for an integer or string within the respective expression, we instead
store the integer resp. string in that values plist, and retrieve it
from there when printing or evaluation such expressions (for strings,
evaluation returns a shallow copy of the stored string constant, to
preserve semantics). For eager floats, the values plist is used instead
of `EAGER_FLOAT_LITERAL_CACHE`, which is removed by this patch (thus
resolving part of issue #1993).

These changes have several advantages:
* a function like `f := x -> 12345678901234567890` used to return a new
  integer object with each call; now it always returns the same integer,
  i.e., `IsIdenticalObj(f(1), f(2));` now returns true
* floats benefit from avoiding use of a global "cache" which never is
  emptied (thus these eager float literals now are garbage collected if
  the function referencing them is garbage collected)
* the cache simplifies future optimizations: e.g. we could convert
  expressions like `-2^100` by evaluating them and storing the result
  in the values list; we could also store permutations precomputed, that
  is, replace a `T_PERM_EXPR` and the `T_PERM_CYCLE` expressions nested
  in it by a single "constant expression" that references the immutable
  permutation described by these expressions (at least in the case these
  expressions were explicitly defined, i.e., `(1,2)` would work but not
  `(i,j)`

243213 of 286545 relevant lines covered (84.88%)

13.17 hits per line

Jobs
ID Job ID Ran Files Coverage
1 8918.1 (TEST_SUITES="docomp testtravis") 14 Jan 2019 10:28PM UTC 0
75.84
Travis Job 8918.1
2 8918.2 (TEST_SUITES="docomp testtravis" ABI=32 CONFIGFLAGS="") 14 Jan 2019 10:28PM UTC 0
75.85
Travis Job 8918.2
3 8918.3 (TEST_SUITES="docomp testtravis" ABI=64 HPCGAP=yes) 02 Feb 2021 01:19PM UTC 0
0.0
Travis Job 8918.3
3 8918.3 (TEST_SUITES="docomp testtravis" ABI=64 HPCGAP=yes) 14 Jan 2019 10:25PM UTC 0
75.71
Travis Job 8918.3
7 8918.7 (TEST_SUITES=testmanuals) 14 Jan 2019 10:31PM UTC 0
72.57
Travis Job 8918.7
8 8918.8 (TEST_SUITES=testbugfix) 14 Jan 2019 10:41PM UTC 0
60.19
Travis Job 8918.8
9 8918.9 (TEST_SUITES="testinstall" JULIA=yes CONFIGFLAGS="--disable-Werror") 14 Jan 2019 10:39PM UTC 0
73.34
Travis Job 8918.9
Source Files on build 8918
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #8918
  • 4be10ae1 on github
  • Prev Build on master (#1.0.6786)
  • Next Build on master (#8920)
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

© 2026 Coveralls, Inc