Re: Porting C++ from PA_RISC to Itanium (102 Views)
Posts: 14
Registered: ‎04-20-2005
Message 1 of 3 (102 Views)
Accepted Solution

Porting C++ from PA_RISC to Itanium

I'm trying to estimate the cost of moving a large C/C++ application from HP-UX 11.11 PA_RISC 32-bit, to 11.23 Itanium 32-bit. We intend to re-compile from source.

I've read various transition guides and papers, but I'd be grateful if anyone could answer the following queries:

Is Itanium's byte ordering the same as PA_RISC (big-endian)? We have a lot of code that directly manipulates bytes in words, so this would be an issue.

Is Itanium's default 32-bit structure alignment the same as PA_RISC? If fields move, or structures get bigger, this could be an issue for us.

Is 11.23's 32-bit shared memory model the same on Itanium? PA_RISC limits us to shmem from Quadrants 3 and 4, and only three quarters of 4 (ie. 1.75Gb in total).

Are there any other surprises I should know about? :-)

Frequent Advisor
Posts: 70
Registered: ‎06-06-2002
Message 2 of 3 (102 Views)

Re: Porting C++ from PA_RISC to Itanium

Hello Nick,

Posting on behalf of the teammate who works with compilers at HP and also provided the answers.

1. Yes. Both HP-UX PA and HP-UX IA are big endian.
Since you mention that your code is endian aware, I strongly recommend that you run HP Code Advisor static analysis tool on the sources first to locate and clean any possible issues.
It is downloadable from

2. Yes.

3. Yes. However, you need to be aware that if you plan to convert
Q3/Q4 private, you need to enable MPAS (mostly private address space).
This is well documented at documents on MPAS.

Dying is the last thing that I will do.
Posts: 14
Registered: ‎04-20-2005
Message 3 of 3 (102 Views)

Re: Porting C++ from PA_RISC to Itanium


Thanks very much for the quick response.

I did come across the Code Assist tool, so I'll take a look at that.

The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation.