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

ARMv8-A 数据类型

HI expert:

    最近一直在看ARMv8架构的spec,在网上下载了一个的编译器,请问在具体使用ARMv8时和之前在ARMv7上关于各种数据类型所占的字节数有区别吗?比如,int, long, long long, pointer等数据类型的大小.

麻烦解答一下,谢谢!然后能够推荐一款编译器用于Cortex-A53开发?

Parents

  • AArch64模式下CPU的通用寄存器是64bit,但A64指令同时支持对64bit, 32bit, 16bit, 8bit数据类型的读写操作。linux下一般用LP64。

    TYPE               LP32  ILP32  LP64  ILP64  LLP64 

    CHAR                8         8          8         8         8

    SHORT             16       16        16       16       16

    INT                  16       32        32        64      32

    LONG               32       32        64       64       32

    LONG LONG     64       64        64       64       64

    POINTER          32       32        64       64       64

Reply

  • AArch64模式下CPU的通用寄存器是64bit,但A64指令同时支持对64bit, 32bit, 16bit, 8bit数据类型的读写操作。linux下一般用LP64。

    TYPE               LP32  ILP32  LP64  ILP64  LLP64 

    CHAR                8         8          8         8         8

    SHORT             16       16        16       16       16

    INT                  16       32        32        64      32

    LONG               32       32        64       64       32

    LONG LONG     64       64        64       64       64

    POINTER          32       32        64       64       64

Children
No data