示例#1
0
文件: esi.py 项目: maerhart/circt
    def __init__(self):
        self.ctxt = mlir.ir.Context()
        with self.ctxt, mlir.ir.Location.unknown():
            circt.register_dialects(self.ctxt)
            self.mod = mlir.ir.Module.create()
            super().__init__(self.mod)
            self.get_types()

            with mlir.ir.InsertionPoint(self.body):
                self.declare_externs()
                self.top_module()
示例#2
0
# REQUIRES: bindings_python
# RUN: %PYTHON% %s | FileCheck %s

import circt
from circt.support import connect
from circt.dialects import hw

from mlir.ir import *
from mlir.passmanager import PassManager

import sys

with Context() as ctx, Location.unknown():
    circt.register_dialects(ctx)

    i32 = IntegerType.get_signless(32)

    m = Module.create()
    with InsertionPoint(m.body):
        one_input = hw.HWModuleOp(
            name="one_input",
            input_ports=[("a", i32)],
            body_builder=lambda m: hw.OutputOp([]),
        )
        one_output = hw.HWModuleOp(
            name="one_output",
            output_ports=[("a", i32)],
            body_builder=lambda m: hw.OutputOp(
                [hw.ConstantOp.create(i32, 46).result]),
        )
        input_output = hw.HWModuleOp(
示例#3
0
from .appid import *
from .module import *
from .devicedb import *
from .system import *
from .pycde_types import *
from .value import *
from circt.support import connect

import mlir.ir
import circt
import atexit

# Push a default context onto the context stack at import time.
DefaultContext = mlir.ir.Context()
DefaultContext.__enter__()
circt.register_dialects(DefaultContext)
DefaultContext.allow_unregistered_dialects = True


@atexit.register
def __exit_ctxt():
    DefaultContext.__exit__(None, None, None)


# Until we get source location based on Python stack traces, default to unknown
# locations.
DefaultLocation = mlir.ir.Location.unknown()
DefaultLocation.__enter__()


@atexit.register