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

ben-manes / caffeine / #2609
100%

Build:
DEFAULT BRANCH: master
Ran 03 Jul 2021 10:57PM UTC
Jobs 1
Files 73
Run time 5s
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
#2609

push

github-actions

ben-manes
Stronger memory-order when setting a weak/soft value

The plain write to the value piggybacked on the volatile fence when the
lock is released for guaranteed visibility. However, we should not
assume that visibility is delayed until this fence, as the underlying
system may inject a fence earlier (e.g. safepont, context switch). As
the compiler may change program order for plain reads and writes, those
cases must ensure that there are no dependencies for partial visibility.
While true for strong values, the change in 37c51d5 shows a dependency
order is needed for weak/soft values. For stricter correctness,
clearing the Reference must occur after the entry's value has been
visibly changed. Therefore, the release/acquire ordering is used to
ensure we abide by the Java Memory Model, rather than on x86's total
store order (TSO).

For more details, see
http://gee.cs.oswego.edu/dl/html/j9mm.html

6209 of 6708 relevant lines covered (92.56%)

0.93 hits per line

Jobs
ID Job ID Ran Files Coverage
1 #2609.1 03 Jul 2021 10:57PM UTC 0
92.56
Source Files on build #2609
Detailed source file information is not available for this build.
  • Back to Repo
  • Build #2609
  • d826021d on github
  • Prev Build on master
  • Next Build on master
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