indirect jmp redux (Mac OS on Intel)
gpaeper at empirenet.com
Fri Mar 9 18:04:23 CET 2007
On Mar 7, 2007, at 8:43 PM, Frederick Karl Kepner DuPuy wrote:
> Hi. Regarding gpc for Mac OS X on Intel, I found a thread in the
> archives (see below) from October 2006 concerning an error message a
> user (Nestor Aguilera) got in compiling even the simplest programs.
> Unless I'm misreading the thread, no final conclusion was reached. Is
> anything further known now?
> Here's the thread: http://www.gnu-pascal.de/crystal/gpc/en/
> And the gist of the error messages: indirect jmp without `*'
> I'm having the same issue he had: programs which used to compile and
> execute happily with the gpc for PPC compiler are less happy with the
> gpc for Intel compiler--- they're still compiling, but issuing this
> error message repeatedly as they do so.
If you compile to assembly for the Intel target, the assembly code
will assemble without errors using Apple's latest as. (The assembled
binary disassembles back to the correct indirect jump instruction
with the * included so the right instruction bit pattern is getting
generated with Apple's latest as even with out the * on the indirect
jump assembly code.)
> I believe the output executes OK; but you can see why this is
> unsettling. So: is this a problem, or just an annoyance to be lived
> with? And is it happening to everybody trying to use gpc for Mac on
> Intel? (If so I'm curious as to why it hasn't been discussed since
I ended up finding a solution to the problem by installing an older
version of cctools, modifying Adriaan's GPC build scripts so the
Intel compilers use the older cctools, and then using the modified
scripts to build and install the PPC and Intel native and cross
To leave Apple's Xcode installed version of cctools unmodified, I
ended up using an Open Darwin odcctools package since that package's
install script was written to allow for easy installing to a user
specified installation directory. (Apple's cctools package install
script isn't written to allow for easy user specification of an
Since I needed a later version of GPC (gpc-20060325) than the version
Adriaan has in his Mac OS X sources package for the bug fixes and
additional MacPascal dialect support, I also updated Adriaan's Mac OS
X gpc patch file and build scripts to build and install gpc-20060325
PPC and Intel native and cross compilers. In my updated version of
Adriaan's Mac OS X sources package, I also included the odcctools
package and modified Adriann's build-on-xx command scripts to include
building and installing that package's tools.
My modified and updated version of Adriaan's Mac OS X GPC sources
package is 24.2 MB when zipped. If you want a copy of it so you can
build a gpc-20060325 based version of GPC for Mac OS X (PPC and/or
Intel) which uses the older odcctools verion as for assembling to
avoid the "indirect jmp without `*'" error messages, let me know.
In regards to who might be encountering the problem, it is only
those Mac OS X users who are using the Xcode version 2.4.x installed
as to assemble the GPC generated Mac Intel assembly code output that
will experience the problem.
gpaeper at empirenet.com
More information about the Gpc