AVR C Runtime Library - Patches: patch #5377, Fix for multiple dufinition error
You are not allowed to post comments on this tracker with your current authentication level.
patch #5377: Fix for multiple dufinition error
Submitter: | None | ||
Submitted: | Fri 08 Sep 2006 10:30:50 PM UTC | ||
Category: | None | Priority: | 7 - High |
Status: | Wont Do | Privacy: | Public |
Assigned to: | None | Originator Email: | -email is unavailable- |
Open/Closed: | Closed |
Wed 13 Sep 2006 08:58:33 PM UTC, comment #1: |
Joerg Wunsch <joerg_wunsch> |
Fri 08 Sep 2006 10:30:50 PM UTC, original submission:
Fix to fix the multiple definitions of __floatsisf:
|
Anonymous |
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 4 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2006-09-13 | joerg_wunsch | Status | None | Wont Do | |
Open/Closed | Open | Closed | |||
2006-09-13 | arcanum | Priority | 5 - Normal | 7 - High | |
2006-09-08 | None | Attached File | - | Added floatsisf.fix, #10715 |
Powered by Savane 3.13-caa5.
Corresponding source code
I agree with Björn here that renaming these functions is a
bad idea. They have been deliberately named that way in
order to provide overrides for the bloated functions with
the same name that are in libgcc.a (they are produced from
C code, the fplib versions are hand-tuned assembly).
The entire architecture of our current libm is debatable.
Those functions that are meant to supersede libgcc.a
functions should rather be moved out to GCC, but that's not
possible the way libm/fplib is created right now, as
everything is a large plate full of spaghetti. However,
throwing that spaghetti away without a well-designed
replacement cannot be a solution either.
Right now, you simply have to add -lm to your linker command
line (in C++, you even have to add ${PATH_TO_LIBM}/libm.a,
but I still believe this is a GCC bug).