I'd like to skip the tedious process of debugging and summarize the followings which crossworks has done for what you've paid for

- CCM RAM in ld script. As it's obviously from the source(such as control.c), AQ makes use of the CCM memory in STM32 processor. However you can't *just* use it. The ld script and startup file need to be revised to use it properly. Crossworks has done it for you perfectly!
- Basic C runtime. AQ employs dynamic memory allocation for data structures like those related to STM32 peripherals. Although I prefer to use static allocation in embedded systems. Nothing/no one should stop anyone from using dynamic allocation, except ST, the MCU manufacturer
I haven't find anything related to basic c runtime routine on its website
So again, crossworks does this for you. Fortunately, I've found that the ld scripts and syscall implementation of truestudio in StdPeriph would work with some minor changes.
With the findings above, I wrote a makefile from scratch, and have successfully compiled the codes. The binary has been tested on a M4 v2. It works on the ground, but I haven't tested it in the air. One change I've made to the source is in aq_init.c:
AQ_NOTICE("Initialization complete, hello AQ from GCC.\n");
So the mavlink message would tell you the AQ is running on gcc

The source can be found here:
https://github.com/wangyeee/autoquadfc
Basically you can clone and make, all dependencies are in that repo. Please advice if there were any copyright issues doing so.
It's much appreciated if anyone can test it on AQ6 with or without DIMU.


Edit on 27-Mar-2016:
I did successful flight tests today. Flying in manual/PH/DVH and mission mode are working as expected. RTH by radio command and RTH on failsafe are also working.
I've uploaded compiled binaries for M4v2 and AQ6, so that more people can test.
Be sure to do ground test w/o props first, safety is always No.1 priority!!