Free Pascal development resources

Please, put additions using FTP on www.freepascal.org in the directory /FPC/html/resources.

Add an entry here (this page is in CVS), and remember that it has a relative directory resources. Please put it in a format that everyone can read on any platform, if possible (e.g. not MS word).

Several manuals

  1. Compaq pascal reference manual.
  2. Intel architecture manual.
  3. Intel ELF (Executable and Linking Format) format description. (A zipped postscript version is also available, and is substantially smaller.)
  4. LX executables file format (in IBM INF format - it's supposed to be supported in our IDE, although I didn't try it)

Alpha architecture documents

  1. Calling conventions for Alpha architecture. (zipped postscript)
  2. Assembly language reference for Alpha architecture. (zipped postscript)
  3. The copt peephole optmizer
  4. Notes
  5. Alpha architecture quick port guide
  6. LCC port to alpha. (With it's daily daily log)

Publications of the MSCP

  1. K.D. Cooper and Nathaniel McIntosh "Enhanced Code Compression for Embedded RISC Processors", ACM SIGPLAN PLDI 99, June 1999.
  2. K.D. Cooper, P.J. Schielke, and D. Subramanian, Optimizing for Reduced Code Space using Genetic Algorithms, LCTES 99, June 1999.
  3. K.D. Cooper and T.J. Harvey, Compiler-Controlled Memory, 8th ASPLOS, October 1998.
  4. K.D. Cooper and P.J. Schielke, Non-local instruction scheduling with limited code growth, LCTES 98, June 1998.
  5. J. Lu, Interprocedural Pointer Analysis for C, PhD Thesis, Rice University, April 1998. Also can be found as Technical Report tr98-317.
  6. T. J. Harvey, Reducing the Impact of Spill Code, Master's Thesis, Rice University, May 1998. Also can be found as Technical Report tr98-319.
  7. K. D. Cooper, L. T. Simpson, and C. A. Vick, Operator Strength Reduction, submitted for publication March, 1997.
  8. K. D. Cooper and L. T. Simpson, Live range splitting in a graph coloring register allocator, Proceedings of the 1998 International Compiler Construction Conference, March 1998. Preliminary version (to appear).
  9. K. D. Cooper, T. J. Harvey, and L. Torczon, How to Build an Interference Graph, Software--Practice and Experience, April, 1998.
  10. P. Briggs, K. D. Cooper, T. J. Harvey, and L. T. Simpson, Practical Improvements to the Construction and Destruction of Static Single Assignment Form, Software--Practice and Experience, to appear.
  11. K. D. Cooper and J. Lu, Register Promotion in C Programs, Proceedings of the SIGPLAN 97 Conference on Programming Language Design and Implementation, June 1997.
  12. P. Briggs, K. D. Cooper, and L. T. Simpson, Value Numbering, Software--Practice and Experience 27(6), June 1997, pages 701--724
  13. K. D. Cooper, K. Kennedy, and N. McIntosh, Cross-loop Reuse Analysis and its Application to Cache Optimizations, Proceedings of the Ninth Workshop on Languages and Compilers for Parallel Computing, San Jose, August 1996.
  14. K. D. Cooper, L. T. Simpson, and C. A. Vick, SCC-Based Value Numbering, Technical report CRPC-TR95636-S, Center for Research on Parallel Computation, Rice University, October 1995.
  15. K. D. Cooper and L. T. Simpson. Value-Driven Code Motion, Technical report CRPC-TR95637-S, Center for Research on Parallel Computation, Rice University, October 1995.
  16. P. Briggs, K. D. Cooper, and L. T. Simpson, Value Numbering, Technical report CRPC-TR95517-S, Center for Research on Parallel Computation, Rice University, November 1994, To appear in Software - Practice and Experience.
  17. P. Briggs and L. Torczon, An Efficient Representation for Sparse Sets, ACM Letters on Programming Languages and Systems (LOPLAS) 2(1-4), March-December 1993, pages 59-70.
  18. M. Burke and L. Torczon, Interprocedural Optimization: Eliminating Unnecessary Recompilation, ACM Transactions on Programming Languages and Systems (TOPLAS) 15(3), July 1993, pages 367-399.
  19. K. D. Cooper, M. W. Hall, and K. Kennedy, A Methodology for Procedure Cloning, Computer Languages, 19(2), April 1993, pages 105-118.
  20. P. Briggs, K. D. Cooper, and L. Torczon, Rematerialization, Proceedings of the SIGPLAN 92 Conference on Programming Language Design and Implementation, SIGPLAN Notices 27(7), July 1992, pages 311-321.
  21. K. D. Cooper, Using Compiler Technology to Drive Advanced Microprocessors Proceedings of the DARPA Software Technology Conference, Los Angeles, CA, April 28-30, 1992, pages 42-49.
  22. P. Briggs, Register Allocation via Graph Coloring, PhD thesis, Rice University, April 1992.
  23. P. Briggs, K. D. Cooper, and L. Torczon, Coloring Register Pairs, ACM Letters on Programming Languages and Systems, (LOPLAS) 1(1), March 1992, pages 3-13.
  24. K. D. Cooper, M. W. Hall, and L. Torczon, Unexpected Side Effects of Inline Substitution: A Case Study, ACM Letters on Programming Languages and Systems, (LOPLAS) 1(1), March 1992, pages 22-32.
  25. K. D. Cooper, M. W. Hall, and L. Torczon, An Experiment with Inline Substitution, Software - Practice and Experience 21(6), June 1991, pages 581-601.
  26. P. Briggs, K. D. Cooper, K. Kennedy, and L. Torczon, Coloring Heuristics for Register Allocation, Proceedings of the SIGPLAN 89 Conference on Programming Language Design and Implementation, SIGPLAN Notices 24(7), July 1989, pages 275-284.
  27. K. D. Cooper and K. Kennedy, Fast Interprocedural Alias Analysis, Conference Record of the Sixteenth Annual ACM SIGACT/SIGPLAN Symposium on Principles of Programming Languages, January 1989, pages 49-59.
  28. K. D. Cooper and K. Kennedy Interprocedural Side-Effect Analysis in Linear Time, Proceedings of the SIGPLAN 88 Conference on Programming Language Design and Implementation, SIGPLAN Notices 23(7), July 1988, pages 57-66.

Useful links with resources

  1. Intel's Tools Interface Standard