[Info-vax] NaT consumption faults with COBOL?

Jim Duff spam.this at 127.0.0.1
Thu Nov 19 14:39:39 EST 2009


John Reagan wrote:
> "Jim Duff" <spam.this at 127.0.0.1> wrote in message 
> news:49dbt6-ddk.ln1 at SendSpamHere.ORG...
>> All,
>>
>> I'm currently seeing some NaT consumption faults on straight COBOL code
>> compiled with HP COBOL V2.9-1453 on OpenVMS IA64 V8.3-1H1.  The compiler
>> is invoked with the following qualifiers:
>>
>> /ansi/tie/standard=v3/reserved=noxopen/check=(all,nodec)/convert=leading
>>
>> Looking up the NATFAULT error, we have (in part):
>>
>> "A NaT value can be generated by a user program using an I64 feature
>> called control speculation. However, compiler-generated code should
>> never take a NaT fault."
>>
>> Based on this, a call was logged with HP, and they came back with "This
>> is a function of the memory load on your machine."
>>
>> This doesn't ring right with me.  Has anyone else seen anything similar?
>> Any known issues around this area?
>>
> 
> That wasn't the most helpful answer you received.
> 
> I haven't seen any NaT consumption faults with COBOL code.  There was some 
> bugs in the GEM code generator that might expose incoming NaT that just 
> happen to be sitting around in registers.  We only saw them in C and BLISS 
> code.  However, my memory says they should be fixed in the GEM inside of 
> COBOL V2.9 regardless.
> 
> Is this easily reproducable?  Most NaT consumption faults I've seen are 
> random and hard to pin down.
> 
> You should submit a case against the COBOL compiler and provide a reproducer 
> if possible.  If not, the team would certainly want to know enough info to 
> track it back to the COBOL source line that tripped across the NaT (so .MAP 
> files, /LIST/MACH files, etc.).  We need that to figure out which code 
> pattern needs NaT safety checking.  As the message said, no 
> compiler-generated code should take a NaT fault (including Macro-32).  You 
> should only be able to get a NaT fault if you write in Itanium assembly and 
> aim at your foot.
> 
> GEM itself does not use the NaT feature of Itanium, but the C++ compiler 
> does (which is how NaT show up from time to time).
> 
> I can explain in more detail if folks are interested (and you have a strong 
> gag reflex).
> 
> John 
> 
> 

John,

Thanks for confirming what I expected.  As soon as I have a valid
traceback, listings, and maps, I'll forward the info through the
appropriate HP channels.

Jim.
-- 
www.eight-cubed.com



More information about the Info-vax mailing list