Other Parts Discussed in Thread: HALCOGEN
How can I get Halcogen to build me an RM57 project for the ARM V6 compiler?
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Chuck,
I don't think Green Hills are owned by ARM. I cannot find any reference to this. I am fairly sure they are an independent company.
RIk
Hi Rik,
You are correct on this. I was misinformed.
Following is a statement/assist from our ARM support contact in regard to using Halcogen with the RC6 compiler.
"Reading through the thread though, our ARM Compiler 6 (AC6) is very GCC friendly. Chances are if the developer starts with the GCC port of Halcogen generated code, there would be very little (if any) porting work needed to compile with our AC6 compilation tools."
In short, if you choose the GCC option in Halcogen, the code should port easily to AC6.
I hope this is helpful.
Chuck,
Yes it is very GCC friendly and I have managed to port the majority of the HalCoGen code without any difficulties. I did have the change the assembly a bit so that it would build using armclang (although I could have used armasm).
The only remaining (but significant) problem I have is the low level C initialization code (variable initialization, zero init etc.) The HalCoGen code is expected symbols generated from the GCC linker using a .ld file, yet armclang uses a scatter file and expects __main to be called to do the initialization. I changed the HalCoGen code to call __main and removed the variable initialization it generates, however this is not working correctly for me. We are using numerous data sections throughout the ram which need initialization (as we use the MPU).
I think calling __main is the correct thing to do? It is possible that I have not configured the scatter file correctly for the HalCoGen project.
Interestingly I cannot find any examples anywhere for ARM Cortex-R using the ARM V6 compiler (nothing provided with Keil or DS5).
Rik