[Bug 225054] java/openjdk* : fails to build with clang 6.0 (blocks 571 ports)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Jan 10 19:48:50 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=225054

--- Comment #7 from Dimitry Andric <dim at FreeBSD.org> ---
(In reply to Jan Beich from comment #5)
> Dimitry, can you find Clang commit that changed integrated assembler in
> order for us to better understand the rationale?

Yes, this was caused by https://reviews.llvm.org/rL315899; the changes were for
"better" rep/lock prefix support, but I filed several severe regression bugs,
after noticing these during world and ports builds, see:
* https://bugs.llvm.org/show_bug.cgi?id=35741 (comments after x86 prefixes
cause errors )
* https://bugs.llvm.org/show_bug.cgi?id=35749 (.byte directives after x86
prefixes cause errors)
* https://bugs.llvm.org/show_bug.cgi?id=35831 (labels after x86 prefixes cause
errors)

The first bug was fixed fairly quickly, but there has been no movement on the
other two, and I think it is likely that more edge cases exist.

I asked in PR35749 whether the release manager will consider reverting the
upstream change in the 6.0.0 branch, since this regressed so much.  I will ask
again.


> (In reply to Jung-uk Kim from comment #6)
> (In reply to Jan Beich from comment #4)
> 
> That's bad. :-(
> 
> Then, I guess we have no choice but to do something like this:
> 
> +-#define LOCK_IF_MP(mp) "cmp $0, " #mp "; je 1f; lock; 1: "
> ++#define LOCK_IF_MP(mp) "cmp $0, " #mp "; je 1f; .byte 0xf0; 1: "

Yes, that is the workaround I put in my local ports tree too.  But I hate it :(

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-java mailing list