Definition of fix-up?

I saw this term in the Python Lisp compiler and some C-link sources.

My assumption is that the fix is ​​just a wrapper around the build procedure, which ensures that the alignment is correct, but I'm not sure about anything here.

+3
assembly compiler-construction linker fixup
Jul 06 '09 at 16:42
source share
2 answers

A "fixup" is a linker. Here's a pretty good discussion of this issue:

http://www.microsoft.com/msj/0797/hood0797.aspx

Whenever an object file (.o, .obj) refers to some external character, it returns a placeholder code, such as "Put address 0 to register 5", and a note that says: "Fill this 0 with the actual address of the character “Foo '.” In some other object files, “foo” will be defined, the linker will return and “correct” the value 0 as the correct address.

By the way, if no one defines "foo", you get a retro 50 style error message that robs something like "cannot find a link to _foo" or even less clear if you use C ++.

And quite rarely, you get a “fixup” error when the address “foo” doesn't match where the linker wants to put it. As a rule, this comes from a correction requiring too much relative displacement.

+8
Jul 06 '09 at 22:45
source share

Linker and Loaders is an interesting Inker resource that explains a lot of jargon and also includes non x86 cpus:

http://www.iecc.com/linker/

from the moderator comp.compilers.

+1
Nov 26 '09 at 22:43
source share



All Articles