Date: Thu, 14 Sep 2023 08:26:16 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-arm@FreeBSD.org Subject: [Bug 273773] PNVI-ae-udi memory model non-compliance Message-ID: <bug-273773-7@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D273773 Bug ID: 273773 Summary: PNVI-ae-udi memory model non-compliance Product: Base System Version: 13.2-RELEASE Hardware: arm64 OS: Any Status: New Severity: Affects Many People Priority: --- Component: arm Assignee: freebsd-arm@FreeBSD.org Reporter: pkk@spth.de Attachment #244826 text/plain mime type: Created attachment 244826 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D244826&action= =3Dedit Some sample C source to reproduce the issue I discovered this issue using the SDCC regression test suite on a Raspi 4 running FreeBSD 13.0, 13.1 and 13.2. I do not know if it affects other Free= BSD systems. The C standard does not specify a memory model, and there are ambiguities a= nd different interpretations. Years ago, this became to be seen as a problem, = and WG14 created the memory model study group. By now, there is mostly a consen= sus that the memory model called "PNVI-ae-udi" makes the most sense. While it w= ill not be put into the C standard immediately, it will be a technical specification (TS 6010). FreeBSD 13 on aarch64 currently fails three of the testcases for the PNVI-ae-udi memory model (I have not seen similar problem on GNU/Linux with recent clang and GCC). Reproduce e.g. via: philipp@raspi-aulnay:~ $ clang -Wall -pedantic -O2 test2.c test2.c:35:13: warning: unused variable 'j' [-Wunused-variable] uintptr_t j =3D (uintptr_t)q; ^ 1 warning generated. philipp@raspi-aulnay:~ $ ./a.out Assertion failed: (y =3D=3D 11), function testMM, file test2.c, line 39. Abort trap (core dumped) --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-273773-7>