Skip to content

Latest commit

 

History

History
37 lines (24 loc) · 2.05 KB

File metadata and controls

37 lines (24 loc) · 2.05 KB

Onramp Core

This folder contains source code for all of the Onramp core components.

All core components are written in Onramp languages and are fully platform-independent. The build scripts are written in Onramp Shell so they can run inside an Onramp VM.

Table of Components

Program Description Operation
cc Driver Performs any or all phases of translation
cpp Preprocessor Preprocesses .c to .i
cci Compiler Compiles .i to .os
as Assembler Assembles .os to .oo object file
ar Archiver Combines .oo object files into .oa library
ld Linker Links .oo and .oa into .oe executable
libc Standard library Provides C and POSIX library functions
libo Onramp library Provides library functions for Onramp components
hex Hex Tool Converts Onramp Hexadecimal .ohx to raw bytes
sh Shell Runs Onramp .sh scripts
os Operating System Implements a filesystem and syscalls

Folder Structure

The core sources are organized with the following folder structure:

core/<name>/<stage>/
  • <name> is the name of the component. It is also the base name of the resulting binary (executable or archive) when compiled.

  • <stage> is the stage of the component. This is typically of the form #-<lang>, where # is the stage number and <lang> is the subset of the input language it supports. Some components have only a single stage, in which case the <stage>/ folder is omitted.