[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Shared libs.



Michael Hohmuth wrote:
> This looks a lot like my original proposal in my article
> <199511162020.VAA19478@irs.inf.tu-dresden.de>, just that I had
> confused Pexec mode 3 with mode 4.  However, you still deserve the
> credits for adding the missing pieces and making it sound as if it
> actually was workable. :-)

You are right. My proposal depends a lot on yours, I just forgot to
mention it. :-(

> I don't like both options.  Is there a way to transmogrify external
> memory references into calls to automatically-generated wrappers at
> link time?
> 
> (Please forgive me if this looks like I was somewhat ignorant about
> what object files look like; this is only because I _am_ somewhat
> ignorant about what object files look like!)

This is not a problem of the format of object code files but of the
actual assembler code. You'd have to replace a single "move.[bwl]"
instruction by an jsr or bsr instruction to make this work. 

While this alone would work (from the standpoint of code size) you
don't know which register actually holds the value that is to be
stored or into which register the compiler would like the value to be
loaded. So we need one more instruction to push the register onto the
stack or pop it from the stack. Even worse if the code would use
baserel addressing for variables :-(

I don't see hope in this area.

Wolfgang

----
Wolfgang Lux
WZH Heidelberg, IBM Germany             Internet: lux@heidelbg.ibm.com
+49-6221-59-4546                        VNET:     LUX at HEIDELBG
+49-6221-59-3200 (fax)	                EARN:     LUX at DHDIBMIP