1

As far as I know, the registers names in IA-64 are different from the registers names in x86-64/AMD64, but I am unable to find what the registers names are.

I found on one website that the general registers in IA-64 are called r0 to r127, while I found on another website that they are called gr0 to gr127.

Where can I find the correct information?

Peter Cordes
  • 328,167
  • 45
  • 605
  • 847
Tom
  • 1,344
  • 9
  • 27
  • 3
    Just for the record, x86-64 is completely unrelated to IA-64, other than x86 being designed by the same company. They are totally separate ISAs. (Early IA-64 hardware contained an x86 co-processor because they aimed at replacing x86, but it wasn't a "mode" for IA-64, it was basically a whole separate core.) – Peter Cordes Apr 15 '19 at 10:40
  • 1
    https://www.intel.com/content/www/us/en/processors/itanium/itanium-architecture-vol-1-2-3-4-reference-set-manual.html has Intel's manuals, which call them GR0-GR127. (Also, turns out I was wrong: IA-32 code did maybe execute on the same core in compat mode, or at least the emulation was done with GR8-31 holding IA-32 integer + segment regs). Different assemblers may accept different names. Wikipedia https://en.wikipedia.org/wiki/IA-64 uses `gr0` with a subscript 0. – Peter Cordes Apr 15 '19 at 10:56
  • 1
    There are various architectures (I know this from PowerPC, ARM and MIPS) where different compiler manufacturers use different register names. In such cases you may ask which naming convention is used by the CPU manufacturer. However, it is hard to say that one naming convention is not "*correct*". – Martin Rosenau Apr 15 '19 at 11:20
  • of course the names can be found in the documentation from the designer. Possible duplicate: [Assembly registers in 64-bit architecture](https://stackoverflow.com/q/20637569/995714) – phuclv Apr 15 '19 at 13:06

0 Answers0