Start of topic | Skip to actions

PIR Meetings (IBM and Rice)

June 4, 2008

Agenda

  • Overall framework for X10 toolchain, PIR
  • Should XCode files be in XML?
  • Should analyses and transformations be developed in Java? X10? gcc toolchain?
  • Flesh out example PirAnalysesAndTransformations?
  • Review multi-level IR structure proposed by Rice
  • Workgroup for actual PIR design?
  • Compilation for work-stealing
  • Benchmark programs?
  • Timelines?

Triples or quads for compiler? stack machine for external Xcode representation? ASCII vs binary? Locals typed or not? XML should be one to one representation for Xcode?

For Xcode: The structure of the body of a method should be general enough to permit irreducible call flow graphs represented. Should support explicit gotos.

Final blocks are usually small -- so they are just copied. Or use closures?

Do we want SSA form? (code bloat, not useful for execution -- useful for analysis?) SSA form for XCode may be an unnecessary complication.

Build into the IR format the ability to store precomputed

(Pradeep) Padua et al: fork/join, cobegin/coend, a CSSA format.

See how BCV has evolved through Java 7. (Igor's point: keep in mind that multiple source languages should be able to compile into XCode.)

Need to figure out how to handle type-checking in BCV -- given that the type system is extensible. i.e. the BCV may need to reflect the compile-time/run-time phase distinction of the X10 source language.

IR1: can be generated from soure.

IR2: can only be generated from XCode. So some IR1 optimizations may not be practical.

Krishna: IR in XVM may be different from IR in AOT compiler?

Level 1 vs Level 2: PIR distinction.

Level 3: should reflect low-level runtime

Discuss Sequoia paper from Stanford for discussion about placement of places on nodes -- and whether this should be specified in the source syntax or in a configuration file.

Level 2 vs Level 3 distinction needs to be revisited in the light of the X10 runtime being done within X10.

Use Soot as a basis? Possible.

WALA? (Usual issue: WALA has no transformation support. Should the WALA team look into extending WALA to support transformations.) Should be able to use WALA to build call graph, escaping stuff.

-- VijaySaraswat - 04 Jun 2008


End of topic
Skip to actions | Back to top
Creative Commons LicenseThis work is licensed under a Creative Commons Attribution 2.5 License. Please follow our citation guidelines.