![]() In most cases FPC uses the GNU assembler ("as" or "gas") as its backend. In addition, however, there is a significant amount of variation between different "flavours" of related operating systems, for example not only are the system call numbers different between SPARC Solaris and SPARC Linux but they are different between SPARC Linux and x86 Linux. Obviously the ABI is grossly different between operating systems: in general a program compiled for Windows will not run on Linux and vice versa. It is also usually considered to include the format of the object modules, executable and library files. whether word and address sizes default to 32 or 64 bits), operand alignment, function calling conventions, system call numbers, and a selection of constants (e.g. This includes the CPU's operating mode (e.g. The interface between an executable program and the underlying operating system is referred to as the Application Binary Interface or ABI. ![]() In most cases the object modules are passed to a linker which then produces an executable program, although in some there are additional stages (code signing for secure operating systems, conversion to a binary for embedded systems and so on). they do not require a separate assembler.Īn assembler is itself an executable program that translates assembly language into an object module. Some other Pascal compilers directly generate object modules or executable programs directly, i.e. The FPC Pascal Compiler translates Pascal source code into assembly language which is then processed by an assembler running as a separate backend.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |