Difference between revisions of "Open tasks"

From Free Pascal wiki
Jump to navigationJump to search
Line 9: Line 9:
 
* debug {$packrecord C} with regard to 16 and 64-bit sizes.
 
* debug {$packrecord C} with regard to 16 and 64-bit sizes.
 
* leafnode stackframereduction (and auto inlining?)
 
* leafnode stackframereduction (and auto inlining?)
 +
* improve PowerPC port:
 +
** improve AIX abi-compatibility (e.g., we don't pass records as the AIX abi prescribes)
 +
** create a PPC-optimizer (if only a peephole optimizer for starters)
 +
** re-enable support for register variables (that's not really  PPC-specific, but the PPC will benefit a *lot* of that)
  
 
Information about compiler development can be found here: [[Compiler development articles]]
 
Information about compiler development can be found here: [[Compiler development articles]]
Line 17: Line 21:
 
* port the 1.0.6/1.0.10 SunOS port to 1.9.x: [[SunOS port]]
 
* port the 1.0.6/1.0.10 SunOS port to 1.9.x: [[SunOS port]]
 
* port the 1.0.6/1.0.10 QNX port to 1.9.x: [[QNX port]]
 
* port the 1.0.6/1.0.10 QNX port to 1.9.x: [[QNX port]]
* create a Darwin rtl: [[MacOS X port]]
+
* improve MacOS X rtl:
 +
* Port the missing RTL units (mainly text console handling)
 +
** Create a Mac OS X installer package definition
 +
** Try to create some kind of plug-in so the compiler can be called  from XCode and Project Builder
 +
** Run the test suite and fix bugs
 +
** Fix support for importing global variables from shared libraries
 +
** Replace as many of my handwritten assembler routines with calls to  libc versions, as Apple is much better at writing fast ppc assembler  code that I am Do the same for the generic math routines.
 +
** Support the Apple dialect so we can use the Universal Interfaces
 +
** Finish Classic Mac OS support
 
* create a WinCE rtl: [[WinCE port]]
 
* create a WinCE rtl: [[WinCE port]]
 
* The unix ports (including derivatives as BeOS and QNX) should have a way to be rerouted to libc instead of syscalls.
 
* The unix ports (including derivatives as BeOS and QNX) should have a way to be rerouted to libc instead of syscalls.

Revision as of 00:50, 5 January 2004

Here is a list of open tasks in FPC.

Compiler development

  • Port the m68k code generator to 1.9.x: M68k port
  • Create a MIPS code generator for 1.9.x: MIPS port
  • For missing language constructs, see: Language related articles
  • Working regvar support for the 1.9.x port.
  • debug {$packrecord C} with regard to 16 and 64-bit sizes.
  • leafnode stackframereduction (and auto inlining?)
  • improve PowerPC port:
    • improve AIX abi-compatibility (e.g., we don't pass records as the AIX abi prescribes)
    • create a PPC-optimizer (if only a peephole optimizer for starters)
    • re-enable support for register variables (that's not really PPC-specific, but the PPC will benefit a *lot* of that)

Information about compiler development can be found here: Compiler development articles

RTL development

  • port the 1.0.10 BeOS port to 1.9.x: BeOS port
  • port the 1.0.6/1.0.10 SunOS port to 1.9.x: SunOS port
  • port the 1.0.6/1.0.10 QNX port to 1.9.x: QNX port
  • improve MacOS X rtl:
  • Port the missing RTL units (mainly text console handling)
    • Create a Mac OS X installer package definition
    • Try to create some kind of plug-in so the compiler can be called from XCode and Project Builder
    • Run the test suite and fix bugs
    • Fix support for importing global variables from shared libraries
    • Replace as many of my handwritten assembler routines with calls to libc versions, as Apple is much better at writing fast ppc assembler code that I am Do the same for the generic math routines.
    • Support the Apple dialect so we can use the Universal Interfaces
    • Finish Classic Mac OS support
  • create a WinCE rtl: WinCE port
  • The unix ports (including derivatives as BeOS and QNX) should have a way to be rerouted to libc instead of syscalls.

FCL development

FVISION development

IDE development

Misc