hardware - IBM amd64 single proc server 8Gb RAM
OS - suse8.0SLES 64bit (kernel 2.4.21-143-smp)
i have assembler issues with single arrays >2Gb.
the test prog on p47 of the 5.2 release notes works OK (obviously) : if you don’t use -mcmodel=medium &c then you get ‘relocation truncated’ error. however, if you increase the array param in this test prog a bit further, eg to 22000, you get a different class of error:
/tmp/pgf77aaaaasEeaD.s: Assembler messages:
/tmp/pgf77aaaaasEeaD.s:60: Error: .COMMon length (-2054967296.) <0! Ignored.
/tmp/pgf77aaaaasEeaD.s:60: Warning: rest of line ignored; first ignored character is `,’
(or similar). this also happens with my alternative test prog (see base of this post), this prog manifests this alternative error if you change the array limit between about 130M and 140M.
Q: the options suggested by 5.2 release notes (-mcmodel=medium &c) seem only to behave the same as -fpic used to do in v5.1. they get me slightly larger arrays than otherwise, as did -fpic in 5.1, but nothing like the proper 5.2 64bit addressing as described in the release-notes table.
in summary - 5.1 & 5.2 both get some mileage out of -fpic for large single arrays, but any extra features in 5.2 seem to add nothing.
do i need to upgrade binutils (in my suse8.0 SLES) or something, to go along with my 5.1–>5.2 upgrade? otherwise, it would seem that the documented 5.2 64bit addressing upgrade is essentially ineffective.
cheers
will
\
my test prog, which won’t assemble:
program TEST1
parameter(i_1=140000000)
integer*4 i1(i_1,4)
do i=1,i_1
do j=1,4
i1(i,j) = 0
end do
end do
stop
end