Compiler development articles/id

From Lazarus-ccr

Jump to: navigation, search

English (en) Bahasa Indonesia (id)

Saat ini versi FPC yang sedang dikembangkan adalah 2.3.1. Internal kompilator didokumentasikan di halaman FPC internals yang berkembang.

Contents

[edit] Umum

How to start

FPC internals

Language related articles

Coding style

Porting Free Pascal

[edit] Hidupkan gaya baru smartlinking (freebsd,linux)

  • in i_*.pas menambah seksi tf_smartlink_ke field flags dari rekaman deskripsi platform untuk OS/CPU combo anda (dalam kasus saya i_bsd.pas, rekaman system_i386_freebsd_info)
  • in ogelf.pas menggulung ke bawah, dan menambahkan af_smartlink_sections ke field flags pada as_i386_elf32_info
  • jalankan "(g)make all OPT='-Aas -k--gc-sections' di tingkat atas untuk membangun menggunakan rutin baru smartlinking.

[edit] C++ linking

Lihat http://rvelthuis.bei.t-online.de/articles/articles-cppobjs.htm

Catatan bahwa FPC tidak mempunyai ofset VMT negatif karerna keterbatasan GNU LD.

Fundamen C++ di atas <-> OPas bergantung pada antarmuka COM : (dikutip dari Rudy Velthuis)

"Well, all compilers must be able to create COM interfaces. Since in C++, these are simply pure abstract classes, and Delphi must have the same layout, for many reasons, they are all compatible. In fact, a pure abstract class pointer points to a structure of which the first entry is a VMT. This is also how interfaces are built"

[edit] Processor dependent

Lihat juga daftar platform.

Passing Pascal Types to C Routines

[edit] i386

PIC information

[edit] PowerPC

PPC Calling conventions

[edit] Linker Internal

Internal Linker

[edit] Paket

packages