LLVM 9

Go To Last Post
7 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The 'how to' build instructions were updated 20-Sep'19 (Windows, POSIX, AVR)

How to build LLVM, libclang, and liblld from source · ziglang/zig Wiki · GitHub

 

AVR are up to XMEGA and the improved tiny10 (tiny102, tiny104) (no unified memory AVR) with 18 bugs current.

Clang has AVR ISR (interrupt, signal)

 


The LLVM Compiler Infrastructure Project

https://github.com/llvm/llvm-project/blob/release/9.x/llvm/lib/Target/AVR/AVRDevices.td#L244

https://github.com/llvm/llvm-project/tree/release/9.x/llvm/lib/Target/AVR#avr-backend

LLVM 8 | AVR Freaks

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

http://llvm.org/  wrote:
Despite its name, LLVM has little to do with traditional virtual machines.

The name "LLVM" itself is not an acronym; it is the full name of the project.

 

I am curious what is the meaning of LLVM

Majid

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Abstract - LLVM Language Reference Manual — LLVM 9 documentation

...

LLVM is a Static Single Assignment (SSA) based representation that provides type safety, low-level operations, flexibility, and the capability of representing ‘all’ high-level languages cleanly. 

...

via LLVM Design & Overview - Overview — LLVM 9 documentation

The LLVM Compiler Infrastructure Project

[mid-page]

Strengths of the LLVM System

  1. LLVM uses a simple low-level language with strictly defined semantics.
  2. ...

Static Single Assignment 15-411 Compiler Design | Computer Science | Carnegie Mellon University

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

m.majid wrote:
I am curious what is the meaning of LLVM

 

laugh

Letting the smoke out since 1978

 

 

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

LLVM generates "bytecode".

Overview | LLVM Bitcode File Format — LLVM 9 documentation

due to

Usage | GitHub - AdaCore/gnat-llvm: LLVM based GNAT compiler

...

To generate LLVM bit code (will generate a .bc file):

$ llvm-gcc -c -emit-llvm file.adb

...

via Combining GNAT with LLVM - The AdaCore Blog

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The Architecture of Open Source Applications: LLVM

...  the main thing that sets LLVM apart from other compilers is its internal architecture.

...

It was very uncommon to see language implementation that supported both [compiler, interpreter], and if they did, there was usually very little sharing of code.

...

 

LLVM is now used as a common infrastructure to implement a broad variety of statically and runtime compiled languages ...

An instance of that is Cling for 64-bit MPU (AMD64, ARM64)

 


via Cranelift compared to LLVM — cranelift 0.0 documentation

cling@GOREPL

Cling Documentation | GOREPL

 

"Dare to be naïve." - Buckminster Fuller