Conversation
…T memory management (TheDan64#566) * Add a function to the Module that creates an MCJIT capable of using a custom MemoryManager * Fix test failures caused by differing allocate_data_section call counts across LLVM versions * refactor: Use explicit bool to i32 cast in MCJIT options * refactor: Use MaybeUninit::zeroed() for MCJIT options initialization * refactor: Mark c_str_to_str as unsafe due to arbitrary lifetime risk * fix: Prevent UB by reordering Box creation in memory manager destruction
* InstructionValue::get_instruction_with_name: remove superfluous return * docs: fix build warnings * Fix typos
Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
…eDan64#572) Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
* Apply rustfmt * Fix typos * workflows: run rustfmt check in test pipeline * Fix typo. --------- Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
…eDan64#570) * Implement feature for disabling opaque pointers on LLVM 15 * Fix missing refactoring in docs * Update compile_error messages * Extend ability to disable opaque pointers to LLVM 16 --------- Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
* fix: proper string constant handling Fixes: TheDan64#510 * fix: test for as_const_string includes unexpected nul termination --------- Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
LLVMIsConditional assume input is Branch and unwraps
* Remove support for LLVM4-7 * Updated workflow * Fixed tests * Fixed more tests * Fixed more tests * Cleanup workflow * Attempt to build all on ubuntu 22.04 * Install missing dep * Clippy and warning cleanup * Fixed tests * Add clippy to CI and appease clippy * rm locked flag * Fix more clippy errors * Fix more clippy errors * Fix more clippy errors * Fix more clippy errors * Fix more clippy errors * Fix more clippy errors * Fix more clippy errors * Rename references to llvm 18-0 to 18-1 * Fixed tests
…tions (TheDan64#584) Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
Updates the requirements on [thiserror](https://github.com/dtolnay/thiserror) to permit the latest version. - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](dtolnay/thiserror@1.0.48...2.0.11) --- updated-dependencies: - dependency-name: thiserror dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
…#590) Signed-off-by: hsqStephenZhang <stephenzhang666666@gmail.com>
* feat: add `get_bit_width` method for float type * test: add `test_float_type` * fix: change bfloat to only llvm11+ --------- Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
* Update Cargo.toml * LLVM 19 preliminary build * rename llvm19-0 to llvm-19-1 * add llvm 19.1 to test matrix * update the bindings to use 19.1 instead of 19 * use sagudev instead of KyleMayes for LLVM 19.1 support * fixup! use sagudev instead of KyleMayes for LLVM 19.1 support * fix for metadata kind id * add llvm 20 support * fix for LLVMSetNUW * fixup! fix for LLVMSetNUW * add llvm 20.1 to ci * fixup! fixup! fix for LLVMSetNUW * fixup! fixup! fixup! fix for LLVMSetNUW * fixup! fixup! fixup! fixup! fix for LLVMSetNUW * add llvm20-1 back to feature detection * fixup! add llvm20-1 back to feature detection * add missing stuff for llvm 20 * fixup! add missing stuff for llvm 20 * try to get llvm from LLVM apt source instead * fixup! try to get llvm from LLVM apt source instead * add libpolly back * disable test_get_decl_va_copy for LLVM 19 and up for now * fix first metadata kind id for llvm 20 * fix test for llvm 20 * try out nextest * make sure jit example can run * improve Kaleidoscope example a little bit to add eval mode rather than repl * feat: support LLVM 19 and 20 in debug info * Clippy fixes * Clippy fixes --------- Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com> Co-authored-by: Steve Fan <steve.fan@n-hop.com>
* Add error.rs, create Error enum, and import Error into crate namespace. * More specific error types. * Fixes typo. * Alignment of 0 is invalid. * Missing #[from] attribute. * Formatting. * More formatting. * Hopefully final formatting commit. * Changes the alignment assertions to != 0, 0 is not a legal alignment. * Changed assertion to check if alignment is 16, which is the last valid set value. * Corrected BitwidthError message.
* Update basic_block.rs * docs: Add documentation for BasicBlock::new method --------- Co-authored-by: Dan Kolsoi <ThaDan64@gmail.com>
* test_default_triple fix * All tests passing on Windows. * Formatting. * Formatting. * Formatting. * Forgot to configure windows dep for windows. * I think it should work now. * I don't know what I'm doing. * Hopefully this satisfies clippy. * I could have sworn that I just committed this.
* Support LLVMGetIndices * Pass doc test
* Get AtomicRMWBinOp * Linting
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Rebased with upstream/master to sync latest changes from TheDan64/inkwell