https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64245

            Bug ID: 64245
           Summary: libgcc for msp430 depends on unreleased binutils
                    feature
           Product: gcc
           Version: 4.9.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libgcc
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dg at cowlark dot com

When building gcc for the msp430 as a cross compiler, configure attempts to
compile this as a test:

---
int main() { return 0; }
---

This turns into the following assembler (edited down):

---snip---
main:
.LFB0:
        .loc 1 7 0
        MOV.W   #0, R12
        .refsym __crt0_call_exit
        RET
---snip---

Unfortunately the .refsym pseudoinstruction was added to binutils in January
2014 (AFAICT, here: http://comments.gmane.org/gmane.comp.gnu.binutils/64683),
and there hasn't been a binutils release since then --- the latest binutils,
2.24, was released late 2013 and doesn't have this feature, which means that
the MSP430 target can't actually be used with a released version of binutils.

For reference, the command line used to build the above code was:

/home/dg/src/gcc-4.9.2-objs/./gcc/xgcc -B/home/dg/src/gcc-4.9.2-objs/./gcc/
-B/usr/local/msp430/bin/ -B/usr/local/msp430/lib/ -isystem
/usr/local/msp430/include -isystem /usr/local/msp430/sys-include    -S -g -O2
/tmp/test.c

Reply via email to