Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
L LangOptum
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 1
    • Issues 1
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Nuclaer
  • LangOptum
  • Wiki
  • Builtins

Builtins · Changes

Page history
Create builtins authored Mar 09, 2020 by Nuclaer's avatar Nuclaer
Hide whitespace changes
Inline Side-by-side
Showing with 20 additions and 0 deletions
+20 -0
  • Builtins.md Builtins.md +20 -0
  • No files found.
Builtins.md 0 → 100644
View page @ a33444d7
# Builtin Functions
Builtin functions are compiled as special symbols before assembly generation, so they can be optimized for the target architecture. They are NOT normal functions (in fact technically they are not functions at all...)
They are:
1. Not guaranteed to have a label of any kind; they have no address
2. Usually compiled inline, depending on the function
3. Are compiled in a special way
4. Are usually extra fast :)
## print and println
void print(...);
void println(...);
These functions write to stdout and take any type of argument. println will add a newline character at the end, print will not.
With int8 and uint8, they will print the argument as a character. For all other integer types the argument is printed as a number in base 10.
int8 pointers are printed as a C string.
All other pointers are printed in lowercase hexadecimal, without any preceding '0x' (you can add this yourself very easily).
\ No newline at end of file
Clone repository
  • Builtins
  • Compiler Mechanics
  • Compiler Structure
  • Desired Builtin Libraries
  • File Inclusion
  • Home
  • OOP
  • Operator Notes
  • Preprocessor
  • Program Control
  • Variable Types
  • language
  • lort (LO RunTime)