Coder Social home page Coder Social logo

vrabche's Introduction

Врабче

Дължина на тялото около 16 cm, размах на крилете 25 cm, тежи около 30 г. Един от най-многочислените видове птици. Има изразен полов диморфизъм, мъжкият е по-ярко оцветен и по-едър. Женската е с монотонно кафеникаво оперение. Неполовозрелите птици и от двата пола имат оперение подобно на женските. Домашното врабче е непрелетна пойна птица, макар че певческите му заложби са относително скромни.

Brief

  • lex & parser
  • code generation
  • RISC-V (rv64gc) backend
  • ARMv7ve backend
  • optimization (IR, partial)
  • optimization (RVBE)

Usage

Clone and compile

git clone https://github.com/Gaomengkai/Vrabche.git
cd Vrabche
mkdir build&&cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8

Use the compiler

./Vrabche -S <SourceFilePath> [-O1|-O2|-O0] [-arm] [-dso] -o <OutputFilePath> [-save-llvm <OutputLLVMIRPath>]

Explanation:

  • The -Ox option is used to specify the optimization level of the compiler.
  • The -arm option is used to generate the arm_aapcs_vfpcc attribute in the Intermediate Representation (IR). The option will be ignored while generating ASM.
  • The -dso option is used to generate the dso_local attribute in the Intermediate Representation (IR). The option will be ignored while generating ASM.

⚠ Attention ⚠

This project is just one part of a competition about compilers. Maintained personally by the author. Except for the participants, the author does not provide any technical support, nor does it guarantee that the project can run on any platform.

Milestone

  • 20230718 This frontend passed all the 140 functional tests provided by educg.net.
  • 20230731 This project passed all the 140 functional tests provided by educg.net.

vrabche's People

Contributors

gaomengkai avatar lao-ye-zi avatar

Stargazers

Eason Wang avatar  avatar

Watchers

 avatar

Forkers

gammamilk

vrabche's Issues

may be a bug for Sysy.g4

may be you should replace lAndExp with follow

lAndExp:
	eqExp					# lAndExp_
	| lAndExp And eqExp		# and
	| Lparen lOrExp Rparen	        # lAndExp_;

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.