[Bug 198204] lang/gnatdroid-binutils: fix undefined behavior in gas's tc-arm.c

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Mon Mar 2 20:21:08 UTC 2015


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

            Bug ID: 198204
           Summary: lang/gnatdroid-binutils: fix undefined behavior in
                    gas's tc-arm.c
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: marino at FreeBSD.org
          Reporter: dim at FreeBSD.org
          Assignee: marino at FreeBSD.org
             Flags: maintainer-feedback?(marino at FreeBSD.org)

Created attachment 153690
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=153690&action=edit
Fix undefined behavior in gas/contrib/tc-arm.c's rotate_left() macro

In bug 197395, which is about an exp-run for clang 3.6.0, a failure was
reported for gnatdroid-armv7:

http://pb2.nyi.freebsd.org/data/headi386PR197395-default/2015-02-27_12h37m23s/logs/errors/gnatdroid-armv7-20141023.log

This failure is due to gas emitting "Error: invalid constant (ff) after fixup"
on valid assembly, such as "mov ip, #0xff".  It turns out this is due to
undefined behavior in gas, specifically in gas/config/tc-arm.c, in the
rotate_left() macro, which was fixed by this upstream commit:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=d840c081f8082e8b9e63fead5306643975a97bb3

The attachment fixes this in the same manner as bug 197806 for devel/binutils.

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


More information about the freebsd-ports-bugs mailing list