[Top] [All Lists]

Pro64 code generation without PIC.

To: Pro64 Contrib <pro64-contrib@xxxxxxxxxxx>
Subject: Pro64 code generation without PIC.
From: "Benedict R. Gaster" <benedict.gaster@xxxxxx>
Date: Tue, 07 Aug 2001 08:30:59 +0100
Organization: STMicroelectronics
Sender: owner-pro64-contrib@xxxxxxxxxxx

After my last post to the this mailing list we now have a Pro64 compiler
generating code for function stack allocation and deallocation, and have
function calls working. However, I am currently finding that although
loading data, from .data or .rodata, for example, works fine assuming a
global data pointer, i.e., PIC style code, but am unsure how to turn
this off. In particular, we currently do not have an assembler
supporting PIC style relocations and would like to execute the compiler
generating loads from absoloute addresses.

It seems likely that the Pro64 has options for this style of code
generation, not we are only running at -O0 at the moment, but when I run
the compiler with -v using the command:

    /vob/pro64-src/built/linux-SHmedia/bin/rothkocc -v -S -O0 t4.c

(here rothko is used for the project name and replaces sgicc to aviod

the backend command is:

-PHASE:c -G8 -TENV:PIC -m1 -INTERNAL:return_val=on
-INTERNAL:mldid_mstid=on -INTERNAL:return_info=on -show -O0
-TARG:abi=SHmedia32 -LANG:=ansi_c -fB,/tmp/ccB.3nkQge -s -fs,t4.s t4.c

Here we see that the option -TENV:PIC is passed! Is there a command line
option that will turn off PIC code generation, i.e., following a
different route through the Expand_Code functions of the target backend?

thanks for any help,


<Prev in Thread] Current Thread [Next in Thread>