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

使用armclang集成的assembler汇编器时解析C头文件中struct中成员

相关环境:
IDE: ARM DS5 Version: 2019.1 Build: 201910912
问题:
使用armclang集成的assembler汇编器时,由于数据结构使用C语言定义,但是在汇编文件中希望访问C文件定义的成员变量的偏移
1. 场景如下:
2. C语言头文件实例如下:
typedef struct _cdemo_t
{
unsigned int x;
int buf[16]
unsigned int y;

}cdemo_t;

struct _cdemo_t cdemo_var={0};
3. C中获取结构成员的偏移可使用offsetof()获取结构体成员的位置偏移,例如
#define offsetof(s, m) (size_t)&(((s *)0)->m)
#define CDEMO_X_OFFSET offsetof(struct _cdemo_t,x)
#define CDEMO_Y_OFFSET offsetof(struct _cdemo_t,x)
4.在汇编中,armclang的汇编器不认识offsetof宏,有什么办法解决吗?
通过如下定义绝对地址偏移非常麻烦,在C修改结构成员时还得手工修改
#define CDEMO_X_OFFSET_ASM (0)
#define CDEMO_buf_OFFSET_ASM (4)
....
请教各位!