Operating System - OpenVMS
cancel
Showing results for 
Search instead for 
Did you mean: 

Compiler problems.

 
SOLVED
Go to solution
Daniel Fernandez Illan
Trusted Contributor

Compiler problems.

hi people.
We have a problem with C compiler ( V6.4 and VMS 7.3-1).
When alpha had VMS 7.2.1, compiler works fine but when we upgraded OS appears this error in compilation time:

%SYSTEM-F-HPARITH, high performance arithmetic trap, Imask=00000000, Fmask=00000
001, summary=02, PC=00000000004EDEDC, PS=0000001B
-SYSTEM-F-FLTINV, floating invalid operation, PC=00000000004EDEDC, PS=0000001B
%TRACE-F-TRACEBACK, symbolic stack dump follows
image module routine line rel PC abs PC
DECC$COMPILER GEM_ARCH_HAZARD_ALPHA Contains
33151 00000000000000FC 00000000004EDEDC.

Some idea?.
14 REPLIES
Kris Clippeleyr
Honored Contributor
Solution

Re: Compiler problems.

Daniel,

Given your information, floating register F0 is affected (Fmask), and according to the "summary" an attempt was made to perform an arithmetic, conversion or comparison operation and one or more of the operands do not represent a valid floating point value.
This could be a latent bug in the compiler.
I suggest two things:
upgrade to V6.5 of the compiler, and/or compile the offending module /NOOPT

Good luck,

Kris
I'm gonna hit the highway like a battering ram on a silver-black phantom bike...
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

Thank for you help Kris.

Indeed, using the option /NOOPTIMIZE, it works in agreement with the awaited thing.

Best Regards.

Craig A Berry
Honored Contributor

Re: Compiler problems.

I would recommend installing all recommended OS patches (as well as upgrading the compiler). The latest VMS731_SYS and VMS731_UPDATE should be sufficient. There have been some floating point issues where the compiler was a victim of the support infrastructure in the OS.

Ian Miller.
Honored Contributor

Re: Compiler problems.

the NFS server in TCPIP was once such program that could corrupt floating point state.
If was a build problem I belive.
____________________
Purely Personal Opinion
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

All recommended patches were installed, but problem remained, appearing randomly after someone compilations.

At this moment, /NOOPT option works fine (apparently).
Antoniov.
Honored Contributor

Re: Compiler problems.

Daniel,
can you change floating option (see /iee)?

Antonio Vigliotti
Antonio Maria Vigliotti
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

Antoniov, Trap occurs in compilation time. I think that this option only works in execution time.
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

Antinio, options in compilation are:

CC=/prefix=all/INCLUDE=(SP_FA_INC:,SP_LI_FUENTES:,SP_FA_LIB:,SP_FU_COMPOSITOR:)/define=("__EXPLOTACION__")

and we are add /NOOPT only
Antoniov.
Honored Contributor

Re: Compiler problems.

Daniel,
I known /iee is a runtime option; because using /noopt seems solve I guess there is soe compiler bug evaluating arithmetic expression. Best way is send source code to HP to solve bug while you could change some qualifier to avoid problem.
If you can manager NaN and infinite values you could use /iee=under because compiler don't need add trap code for theese values.

Antonio Vigliotti
Antonio Maria Vigliotti
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

Antonio.

I think that the problem takes place by the compiler and operating system versions, because trap occurs in a automatic script of compilation, and in different sources.

Including /IEE option, trap doesn't occurs at this moment.

Best Regards.
Richard W Hunt
Valued Contributor

Re: Compiler problems.

Ada is notorious for the analogous problem in which you get a HPARITH trap unless you compile that program with /NOOPT

I wonder if whoever wrote the optimizer for C also worked on Ada?

But to be honest, the old TOPS-10 system for DEC KA/KI/KL-10s had a similar problem for their Pascal compiler. The optimizer optimizes an entire instruction out of existence, then gets lost trying to find what it just threw away.
Sr. Systems Janitor
John Gillings
Honored Contributor

Re: Compiler problems.

Daniel,

Any SYSTEM-F error from any compiler is a bug and should be reported formally.

That said, the first diagnostic check will be to upgrade to the latest compiler and retry. If the problem persists with the latest compiler, please log a case against your service contract.

Please have the exact command, and exact error message available and, if possible, the complete source code so the service engineer can reproduce the symptom (extra points if you manage to submit a C program with ALL the required include files! ;-)
A crucible of informative mistakes
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

Thanks to all.
I had a problem with mi old identifier.
Saludos.
Daniel Fernandez Illan
Trusted Contributor

Re: Compiler problems.

Clos this threat