ARM assembly in Qt Creator?



  • Not sure which forum to ask this question. I am using Qt Creator on Win7 to develop for Symbian and in the future for MeeGo. I am using the included compiler so I assume mingw. Can I include ARM assembly and with what syntax? Can I detect if the CPU supports lets say NEON and then include code if it does? This is my first development experience for any mobile platform so please pardon me if its a dumb question :)



  • To clarify, I am using Qt Creator as part of Nokia Qt SDK.



  • You should be able to code ARM assembly in Creator, but it would need to be surrounded by the proper compiler-specific #ifdef. This would be Q_CC_RVCT (for RVCT) and Q_CC_GCCE (for GCCE) for the Symbian compilers. Depending on the architecture you are targeting, you probably also need an #ifdef for the architecture (eg: ARM_ARCH_7A). Obviously this code will only be compiled if you have selected the correct target compiler so MinGW (used for the Simulator) will never compile this code.

    Additionally, you need to change the compiler options to tell it which architecture to compile for. You would need to search Forum Nokia to find out how to enable GCCE to compile ARMv6 or ARMv7 code since I'm not sure how (or even if) GCCE supports it.

    As for the syntax, you can find examples of ARM/NEON assembly inside Qt in the following directory:

    src/gui/painting/qdrawhelper_<arch>...



  • Thanks! That was helpful :)

    Will try this stuff out soon. I don't actually have a NEON compatible hardware right now to test but at least now I know where to search for more info. Thanks again!


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.