Re: Math symbols missing from AVR libgcc
Erik Christiansen <[email protected]>
| Newsgroups | gmane.comp.hardware.avr.gcc |
|---|---|
| Message-ID | <20150324072613.GB3721@ratatosk> |
On 23.03.15 20:59, Sean Kauffman wrote:
> I have some AVR assembly which was generated for an unknown version
> of GCC. I can assemble this source into object code, but if I try to
> link it I am told that it contains undefined symbols.
>
> Specifically, I am missing the following symbols:
>
> __lshrsi3, __ashlsi3,
> __divsi3, __divhi3, __divqi3, __modsi3, __modhi3, __modqi3,
> __udivsi3, __udivhi3, __udivqi3, __umodsi3, __umodhi3, __umodqi3
...
> Does anyone on this list know if these symbols were ever present in
> AVR GCC? If so in what version?
They seem to have been used around year 2000, in avr-gcc-2.95.2, AFAICT.
You're right, they don't seem to be used now.
> If not, do you know where they are really supposed to be coming from?
> Are there drop in replacements for them that follow the same calling
> conventions and do the same things?
Sorry, I'm not sufficiently across the maths functions to offer informed
advice, but hoping that the current crop is compatible is forlorn, I
expect.
Keeping the toolchain source, including libraries such as avr-libc, if
used, in a project's source code repository is good practice. (But I'll
admit to not always having done it myself.)
Erik
--
Behavioural psychology is the science of pulling habits out of rats.
- Dr. Douglas Busch