Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ARM support #3

Open
praqma-thi opened this issue Feb 17, 2016 · 3 comments
Open

ARM support #3

praqma-thi opened this issue Feb 17, 2016 · 3 comments

Comments

@praqma-thi
Copy link

Files available @Trello card

@AndersHoglund
Copy link
Contributor

Tried to use the memory map plugin on a STM32 ARM project, and I can not get any usable results. I seems to be working, but sizes in the graph is wrong. Always only 1 kbyte reported.
Looked around and found this issue. Maybe it is just a case of ARM not beeing supported yet.(?) There is however no info that I have seen that suggests that. Please have a look at the attached files.
memory map plugin files.zip

@buep
Copy link
Contributor

buep commented Aug 6, 2016

Yes, ARM isn't supported yet...we hope to soon do it. Your files can help us as a good example. Thanks for that.
The compilers we support, are actually those available to chose in the plugin configuration.

@AndersHoglund
Copy link
Contributor

It turns out that the GCC parser actually supports ARM32 when comping with a gcc-arm-none-eabi-* compiler. There are however a few problems needing workarounds and bugfixes.

  • WordSize and radix when doing hex to dec conversion is mixed up, bug fixed in PR Fixed the wordsize/radix mixup bug.  #37 .
  • INCLUDE file statements in linker command files are not supported. I did a workaround in Jenkins with a shell build step concatenating all need files into one linker command file. Needs fixing in this plugin, as it crashes when using such a set of linker files. It probably looks incomplete to the plugin.
  • WordSize can be misunderstood. At first I thought that was the processor wordsize, e.g. STM32 is a 32-bit processor but still uses byte addressing and byte sizes. The Word size setting is NOT the processor wordsize, but rather the size used in the map file. i.e. must be set to 8 even on a 32-bit CPU. Might need some clarification. Help text says "The word size of the processor", this is wrong. It is "The word size in the map files."

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants