Bug 14352 - New FP code not compiled for non-arm-elf targets
Summary: New FP code not compiled for non-arm-elf targets
Status: RESOLVED WONTFIX
Alias: None
Product: gcc
Classification: Unclassified
Component: target (show other bugs)
Version: 3.4.0
: P5 enhancement
Target Milestone: 4.8.0
Assignee: Richard Earnshaw
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-03-01 00:06 UTC by Daniel Jacobowitz
Modified: 2012-07-10 09:08 UTC (History)
2 users (show)

See Also:
Host:
Target: arm-unknown-linux-gnu
Build:
Known to work:
Known to fail:
Last reconfirmed: 2005-07-23 05:25:53


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Jacobowitz 2004-03-01 00:06:55 UTC
Most of the ARM target makefile fragments reference arm/lib1funcs.asm, but only
t-arm-elf references all the symbols that need to be defined to get the new
floating point code:
LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_tls _bb_init_func \
        _call_via_rX _interwork_call_via_rX \
        _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _fixunsdfsi \
        _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 \
        _fixsfsi _fixunssfsi

t-linux just says this:

LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx

This generates undefined references in libgcc_s.so to, for instance, the functions
defined by L_addsubdf3.

If I copy LIB1ASMFUNCS from t-arm-elf to t-linux that solves the problem (for
this particular target at least, and keeping _dvmd_lnx...)
Comment 1 Richard Earnshaw 2004-03-01 10:48:57 UTC
Subject: Re:  New: New FP code not compiled for 
 non-arm-elf targets

> t-linux just says this:
> 
> LIB1ASMFUNCS = _udivsi3 _divsi3 _umodsi3 _modsi3 _dvmd_lnx
> 
> This generates undefined references in libgcc_s.so to, for instance, the functions
> defined by L_addsubdf3.
> 
> If I copy LIB1ASMFUNCS from t-arm-elf to t-linux that solves the problem (for
> this particular target at least, and keeping _dvmd_lnx...)

t-linux is not a soft-float target, so shouldn't need any of the FP 
support functions.

R.

Comment 2 Daniel Jacobowitz 2004-03-01 14:39:15 UTC
Subject: Re:  New FP code not compiled for non-arm-elf targets

But this prevents using it with -msoft-float; which is often
advantageous.  Hmm, I'm not sure how best to do it, but I'd like to
make this new requirement clearer - especially now that we have
--with-float=soft.
Comment 3 Daniel Jacobowitz 2004-04-13 23:57:02 UTC
I just ran into this again.  Richard, I know the soft-float routines are not
generally needed, but would there be any harm in building them anyway?
Comment 4 Daniel Jacobowitz 2004-04-14 00:07:55 UTC
An alternative would be to detect --with-float=soft in t-linux, and adjust
LIB1ASMFUNCS.  I think that can be done.
Comment 5 Andrew Pinski 2004-07-14 00:21:42 UTC
Confirmed.
Comment 6 Ramana Radhakrishnan 2010-03-22 21:46:00 UTC
This refers to the arm-linux and arm-elf configurations which are largely in maintenance mode only now. Pulling priority down to P5 and marking as an enhancement. 

Comment 7 Richard Earnshaw 2012-07-10 09:08:27 UTC
The none EABI configuration of arm-linux is no longer supported.