LAFOLLETTE@temple.CSNET.UUCP (04/28/87)
We have encountered some peculiar behaviour with the VMS MACRO assembler,
and would be curious to know whether anybody on the list can explain it.
If the following MACRO program is saved in the file
TRY.MAR, the assembler bombs with an access violation (see below).
This is an assembly time problem, not a run time problem.
.macro sum a=r0, b=r2
movl a, b
.endm
.entry go,0
sum r3, r4
$exit_s
.end go
However, any of the following changes will allow it to assemble without
problems:
1) Changing the name of the macro from sum to ssum. Indeed, any three
character macro name seems to cause the problem and any four character
name seems to work ok.
2) Removing the default values from the macro definition line makes it
work ok.
3) (Twilight zone effect) Renaming the source file to any name of
nine characters or longer makes it work ok. For instance,
if the source file is named MMM.MAR, it bombs. If it is named
TRYTRYTR.MAR it bombs. If it is named TRYTRYTRY.MAR it works
fine.
We will SPR this thing, but we are most curious as to what is going
on, and would appreciate any insight any of you might have.
For reference, this behaviour was observed on a VAX 780, and several
microVAX-II's, all running VMS version 4.4.
$ mac try
%SYSTEM-F-ACCVIO, access violation, reason mask=01, virtual address=F0500006, PC=0000CAF5, PSL=03C00008
Improperly handled condition, image exit forced.
Signal arguments Stack contents
Number = 00000005 00006BFC
Name = 0000000C 0004F042
00000001 00000001
F0500006 000001C5
0000CAF5 0004F055
03C00008 00009249
0004F052
00000000
00000000
21C00000
Register dump
R0 = 00000004 R1 = 00008056 R2 = 00000004 R3 = 0004F03F
R4 = 00006BFC R5 = F0500002 R6 = 0004F042 R7 = 00008056
R8 = 00000004 R9 = 0004DC46 R10= 00000020 R11= 000077A8
AP = 7FF48110 FP = 7FF480D0 SP = 7FF4814C PC = 0000CAF5
PSL= 03C00008
Paul LaFollette LAFOLLETTE@TEMPLE.CSNET
David Weiner WEINER@TEMPLE.CSNET
Robert Stafford STAFFORD@TEMPLE.CSNET
Dept. of Computer and Information Science
Temple University
Philadelphia, Pa. 19119