Code improvement and development of interpreter and compiler based on microC and Yuby

Principle and compilation of programming language brief introduction This is a compilation principle operation called microc, which is mainly completed based on microc and Yuby. Through the code improvement and development of interpreter and compiler, the syntax of some C language is realized (and some parts are improved). The main functions ...

Added by d3ad1ysp0rk on Tue, 08 Mar 2022 18:24:17 +0200

MLIR-Code Doc-Tutorials-Defining Dialect Attributes & Types

   this document is to get a quick start to the specific extension of dialect to the attribute and type system of MLIR. Although the main content of this teaching focuses on the definition of types, these instructions are almost the same for attributes. Types    types in MLIR (including attributes, locations, and many othe ...

Added by darksystem on Tue, 08 Feb 2022 00:11:52 +0200

bgo: an extensible go program building tool

bgo v0.3.0+prefaceWe are already bgo: make it easier to build go programs The basic capabilities of bgo are introduced in.After several days of iteration, I initially felt that it was relatively stable, so I issued version 0.3.0 as a cut before the Spring Festival.The new version is availableAfter the festival, thanks to cmdr Upgrade of the ori ...

Added by kenrbnsn on Wed, 02 Feb 2022 17:28:56 +0200

Markdown vegetable dog notes

Markdown vegetable dog notes What is Markdown Markdown is a lightweight markup language that allows people to write documents in plain text format that is easy to read and writeThe Markdown language was created by John Gruber in 2004Documents written by Markdown can export documents in HTML, Word, image, PDF, Epub and other formatsThe suffix ...

Added by metin on Mon, 31 Jan 2022 06:59:18 +0200

[compilation principle] analysis of PL0 compiler

Reprinted from Analyze PL0 lexical analyzer Some of the original blog is not easy to read, and some contents have been supplemented without deletion. 🥰 The code can be found in Yuanbo, which is implemented in PL/0 language. PL/0 language is a subset of Pascal language. The compiler of PL/0 analyzed here includes Analyze and process the PL ...

Added by kippy on Fri, 21 Jan 2022 22:31:02 +0200

Compile time annotation

I learned to use compile time annotations to generate new files a long time ago, such as the butter knife in Android, but my goal is not to generate new classes, but to modify bytecode at compile time and make plug-ins like Lombok. Recently, I took time to find some materials and finally wrote my own compile time bytecode modification annotatio ...

Added by jtravis on Wed, 29 Dec 2021 15:21:46 +0200

TVM's "hello world" basic process II

Last TVM's "hello world" basic process I Based on a basic case, this paper introduces the definition of calculation and the construction of schedule in TVM. This article follows the case in the previous article and continues to introduce the next key part, which is compilation. With the previously built schedule, you need to compile ...

Added by Kinsbane on Thu, 23 Dec 2021 10:31:08 +0200

What is memory out of order access?

What is memory out of order access? It's more and more interesting to keep digging into the underlying principles of the computer. Today, let's talk about the topic of memory out of order execution. First of all, ask a question: will our written programs be executed in the established order? There seems to be no doubt about it. However, u ...

Added by yeehawjared on Sat, 20 Nov 2021 16:11:08 +0200