This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Accessing C Structures from Assembly

Hey all,

I have a question relating to accessing C structure members from within an assembly module. I notice that the manual indicates that no type information from C modules is available to A51 modules (which makes sense). This leaves a bit of an ugly picture for the accessing of any external structures, however.

Does anyone have any clean method of getting the offsetof() an element within an assembly module? For the moment, I've hard-coded the byte offsets and put some notes in the source file not to rearrange the structure, but I find this unsatisfying. Any advice?

-Jay Daniel

Parents
  • Erik,

    Thanks for the tip. No such luck in this case (differing element sizes). I suspect that there's no cleaner way to do it than what I'm doing now, but I was holding out hope. Perhaps this is one of those situations where inline-assembly in the C source might be useful. That way, I could #define some offsetof()'s in the header files, let the compiler process them, and then use the #defined values in the in-line assembler.

    -Jay Daniel

Reply
  • Erik,

    Thanks for the tip. No such luck in this case (differing element sizes). I suspect that there's no cleaner way to do it than what I'm doing now, but I was holding out hope. Perhaps this is one of those situations where inline-assembly in the C source might be useful. That way, I could #define some offsetof()'s in the header files, let the compiler process them, and then use the #defined values in the in-line assembler.

    -Jay Daniel

Children
No data