tvm icon indicating copy to clipboard operation
tvm copied to clipboard

[Tracking Issue] TVMScript Unified Printer

Open yelite opened this issue 3 years ago • 0 comments

This issue is to track progress for TVMScript Unified Printer

Part 1: Doc

In each step we will introduce several Doc subclasses and implement the corresponding part in PythonDocPrinter.

  • [x] LiteralDoc (together with Doc, DocPrinter base class and PythonDocPrinter) (#11971)
  • [x] ExprDoc (#12048, #12518)
  • [x] StmtDoc (#12111, #12112)
  • [x] Operator Associativity (#12148)

Part 2: Core infra

The following items can be worked on in parallel with items from part 1.

  • [x] ObjectPath (#11977)
  • [x] TracedObject (#12299)
  • [x] StructuralEqual with ObjectPath tracing (#12101)

The following items depend on items from part 1.

  • [x] Diagnostic Marker in DocPrinter (#12344)
  • [x] Registry (#12237)
  • [x] Frame (#12366)
  • [x] VarTable (#12336)
  • [x] IRDocisifer (#12396)

Part 3: IR & TIR

  • [ ] IR: MetadataFrame, DefaultFrame, IRModuleFrame
  • [x] IR: entry point function: tvm::script::Script (#12462)
  • [ ] TIR: base.h (together in #12492)
    • TIRFrame
    • TIRGenericFrame
  • [ ] TIR: type.cc, var.cc, buffer.cc (#12829, #12492, #12506)
  • [ ] TIR: expr.cc (#12552)
  • [ ] TIR: op.cc (#12576)
  • [ ] TIR: stmt.cc (#12582, #12603)
    • AssertStmt
    • Evaluate
    • Store
    • BufferStore
  • [ ] TIR: stmt.cc (#12635)
    • IfThenElse
    • While
    • Prefetch
    • LetStmt
  • [ ] TIR: stmt.cc (#12665)
    • Allocate
    • AttrStmt
  • [ ] TIR: stmt.cc (https://github.com/yelite/tvm/tree/tunip-tir-for)
    • For
  • [ ] TIR: stmt.cc (https://github.com/yelite/tvm/tree/tunip-tir-block)
    • Block
    • BlockRealize
  • [ ] TIR: function.cc (https://github.com/yelite/tvm/tree/tunip-tir-function)
  • [ ] Iron out all details to make it pass existing unit tests
  • [ ] Roundtrippable float number printing

yelite avatar Jun 27 '22 14:06 yelite