What's the specific differences between the WinAVR toolchain and Atmel's Studio 6 toolchain ?
PLEASE: Reply only if you know specifics.
What's the specific differences between the WinAVR toolchain and Atmel's Studio 6 toolchain ?
PLEASE: Reply only if you know specifics.
WinAVR: avr-gcc = 4.3.3, AVR-LibC = 1.6.7, binutils = 2.19
As6 Toolchain: avr-gcc= 4.6.2, AVR-LibC = 1.8.0, binutils = 2.22
There are probably a thousand or more differences listed in the development history between 4.3.3 and 4.6.2 I presume you don't intend someone to list them all?
Also note that these packages are "distributions". They are not just a compiler but also include (different versions) of binutils and AVR-LibC so one would need to explore the Bugzilla's for those too to understand the many differences there.
Until AS6 appeared the general advice here would have been stick with WinAVR unless you need device support for a recent device only covered in Toolchain. But then Atmel got their act together and the "toolchain" in AS6 isn't half bad. So it's 50:50 as to which one to choose if the device is supported but it's unquestionable that "Toolchain" has support for more devices as it benefited from 2 more years of development.
Where can I find the specific compiler differences excluding device support ?
release notes?
Jim
The GCC release history is here: http://gcc.gnu.org/releases.html
You can drill down into each release to see what changes where made, and what bug (Problem Reports, or "PR"s where fixed). For example, the fixes done for 4.6.1 is here: http://gcc.gnu.org/bugzilla/bugl... .
I'm asking for the differences between WinAVR and Visual Studio 6 versions of the gcc/g++ compiler, NOT the differences between versions of the same package from either of the 2 suppliers. Atmel has, apparently, modified the open-source code.
Please: Reply only if you know specifics.
Atmel has, apparently, modified the open-source code.
AFAIK WinAVR is based on GCC 4.3.3 and the AVR Toolchain (that comes with AVR Studio) is 4.6.2. No-one knows the specific differences from memory. There are likely thousands of changes made between 4.3.3 and 4.6.2. Anyone wanting to list the differences would need to browse the change history. I pointed to where (at least parts of) that history is documented. I was actually trying to help you get to some specifics.
It is obvious that you do not want such help, so I will most happily leave this thread here and now.
A last comment: If Atmel has introduced patches developed in-house, then they have either pushed them "upwards" (and then you should be able to locate them) or they are (at least for the time being) kept inside Atmel. Regardless of if this is compatible with the GCC license I do not think that Atmel will publish them here and now as an answer to your question.
Bye.
A last comment: If Atmel has introduced patches developed in-house, then they have either pushed them "upwards" (and then you should be able to locate them) or they are (at least for the time being) kept inside Atmel. Regardless of if this is compatible with the GCC license I do not think that Atmel will publish them here and now as an answer to your question.
I'm told we're working on getting them upstream, but the patches are released in source form with the Atmel Toolchain download packages.
pascor: People gave you all the information one could reasonably expect given your question. Asking for information and just replying with "but I want specifics" over and over again won't help, you need to tell us exactly what you want to know.
- Dean :twisted:
Pascor,
I take it you are aware of:
http://gcc.gnu.org/bugzilla/bugl...
Or were you looking for someone to read it all out to you? Jeesh!
Clawson: I had no idea that there were so many unresolved bugs in the gnu gcc version. Sounds like it's just not "ready for prime time". That there's a glaring bug with the PROGMEM definition in the current 4.3.3 version and they are going to wait until they release version 4.6 to fix it seems to underscore the situation.
I'll have to compare the results of the 2 toolchains as I go along to see what are the differences.
in the current 4.3.3 version
The current release series (bug fixes only) of GCC is 4.7
The oldes maintained release series (bug fixes only) of GCC is 4.6
The active development (new features, not yet released) is future 4.8.
If anybody feels that the GCC development proceeds too slow, he/she can contribute to the project in order so speed it up. Thanks.
If you are not satisfied with the packages you find on the web or from some destributor, please feel free to build whatever compiler version with whatever patches, fixes, extensions or changes you deem appropriate.
and they are going to wait until they release version 4.6 to fix it