An intuitive web based tool targeted at C++ programmers and useful for researching,debugging and optimizing code has been made available.
GCC Explorer is the brainchild of Matt Godbolt who explains his reasons for creating it in his blog:
One of the things I spend a fair amount of time doing at work is compiling my C/C++ code and looking at the disassembly output. Call me old-fashioned, but I think sometimes the only way to really grok your code is to see what the processor will actually execute. Particularly with some of the newer features of C++11 — lambdas, move constructors, threading primitives etc — it’s nice to be able to see how your elegant code becomes beautiful (and maybe even fairly optimal) machine code.
Having crafted aweb-based tool for exploring the output of the compiler under small tweaks of the code, compiler version and compiler flags, Matt was given permission by his company to open source it.
The latest release of GCC Explorer has added more compilers GCC4.7, AVR, ARM, MSP to those available at launch. It now has filters to remove clutter such as unused labels, directives and extraneous comments from the generated assembler and permanent links are supported enabling users to generate a link to their examples. Security fixes also make it safer to run on publicly accessible websites.
The Arduino IDE has been updated with an up-to-date bundled toolchain for AVR that includes new features from Atmel, GCC and AVRDUDE, and the new features have been shared with Arduino Create, the new [ ... ]