Improve avr-ld options for total 249 devices:
- the argument of "-L" (device library sub path)
- the argument of "-m" (device family)
Paths
| Differential D88410
[clang][AVR] Improve avr-ld command line options ClosedPublic Authored by benshi001 on Sep 28 2020, 5:36 AM.
Details Summary Improve avr-ld options for total 249 devices:
Diff Detail
Unit TestsFailed
Event TimelineComment Actions For some devices, the library sub path "-L" and family name "-m" are not always equal. XXX and YYY do not always equal to each other. But current clang/lib/Driver/ToolChains/AVR.cpp assumes they equal. For example, "./bin/clang -O2 -Wall b.c --target=avr -mmcu=atmega2313" needs the following avr-ld options Here XXX=avr25/tiny-stack but YYY = avr25 Comment Actions I haven't verified this all but this looks reasonable to me, at least until a better way is figured out to store MCU specific information in the compiler. The tests may be a little bit excessive though, they all seem to be testing the same thing. Comment Actions Looks good to me, thanks for the patch @benshi001 NOTE: It looks like you will need to rebase this one prior to merge. This revision is now accepted and ready to land.Nov 16 2020, 10:11 PM Closed by commit rGbba96c996555: [clang][AVR] Improve avr-ld command line options (authored by benshi001). · Explain WhyNov 17 2020, 7:28 AM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 294672 clang/lib/Driver/ToolChains/AVR.cpp
clang/test/Driver/avr-link-mcu-family-unimplemented.c
clang/test/Driver/avr-mmcu.c
|
clang-format: please reformat the code
472 diff lines are omitted. See full path.