fspl/llvm
Sasha Koshka e9a9fc75c6 Fixed extra lines after IR blocks 2024-01-28 03:18:39 -05:00
..
README.md Add custom LLVM code generation package 2023-11-22 20:37:16 -05:00
attribute.go Move addrspace to attribute file, will put more things in there 2024-01-27 01:48:29 +00:00
constant.go Added nil (zero initializer) literals 2023-12-21 23:33:38 -05:00
constantexpression.go Add custom LLVM code generation package 2023-11-22 20:37:16 -05:00
convenience.go Add custom LLVM code generation package 2023-11-22 20:37:16 -05:00
encode.go Add function to encode global identifier 2024-01-27 01:47:52 +00:00
function.go Fixed extra lines after IR blocks 2024-01-28 03:18:39 -05:00
gep.go Change the location at which defined IR types are wrapped 2024-01-25 22:57:52 +00:00
global.go Add IsConstant to Global 2024-01-27 04:16:41 +00:00
instruction.go FCmp and ICmp now accept defined types 2024-01-28 00:18:37 -05:00
module.go Add basic globals implementation 2024-01-27 01:49:18 +00:00
terminator.go LLVM improvements 2023-11-26 04:00:20 -05:00
type.go Added a way to test IR type equality 2024-01-27 06:49:30 +00:00
value.go Various fixes 2023-11-23 00:02:00 -05:00

README.md

llvm

This package was created for the express purpose of generating LLVM IR. A good portion of this code was taken from the llir project.

This package supports:

  • Instructions and terminators
  • Constants
  • Modules
  • Functions
  • Types
  • Type defs
  • Blocks
  • Opaque pointers

This package does not support:

  • Constant expressions
  • Sanity checking
  • Typed pointers
  • Metadata and attributes