
Cristian Perfumo wrote:
Simon: (first of all: thank you for the information. As soon as we have it working we will try that application in nofib to see what happens) We already implemented those synchronization functions for ia64 architecture and we have a problem related with base register (find output below).
The questions that arose: 1) What is the REG_Base? 2) Do we need it for ia64? 3) In case we need it, which machine register should we use?
REG_Base points to a CPU-local table of information during execution. It has to be in an actual machine register for a multi-CPU build (in a single-CPU build we can get away with using a fixed memory location). The register assignments are in includes/MachRegs.h, and indeed it looks like IA64 doesn't assign a register to Base. I don't know IA64, so I don't know which register I would pick, but usually it's a good idea to pick one that is callee-saves in the C calling convention. Cheers, Simon