forked from rust-lang/rust
-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enzyme rust #12
Merged
Merged
Enzyme rust #12
Conversation
This file contains 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
* closes rust-lang#657 * Handle vector case * adding test * remove test until further bugfixes
* Add get type analyzer method to C API * Add inverted phi type handler
* Primal activity analysis fix * bugfix * Fix tests
* Fix constant instruction binop in forward mode * Fix llvm7
The `@_ZN9__gnu_cxx12__to_xstringINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEcEET_PFiPT0_mPKS8_P13__va_list_tagEmSB_z` one seems strange to me, but based on my libstdc++ usage probably ok. How about generally getting (slowly) rid of this list by calling `std::string llvm::demangle(const std::string &MangledName)` in `llvm/Demangle/Demangle.h` for every function missing a definition? If it succeeds we can still match the beginning, but using the demangled name it should end up in a shorter comparison list and we should miss less functions. I didn't run into a single fn which I couldn't demangle with llvm-c++filt, so I guess it's valid to still panic then.
* move inactive fn-matching to demangled names * fix clang-format * inactive alloc * only demangle LLVM >= 9
This reverts commit 711df5e.
* test cmake fix
…#608) * Investigate memory error from lstm * Initial tablegen * More tblgen * cmake * Add first call emission * Working atan2 rev * Handle calls to self * Add same type func * Fix lower LLVM build * Remove prints * Cleanup tablegen * Cleanup * LLVM-14 support * fix formating * fix llvm-9/10 build * fix llvm-7/8 build * fix llvm7-10 test failures * test Julia cmake fix * add missing tg dependency * fix cmake for older versions Co-authored-by: Manuel Drehwald <git@manuel.drehwald.info> Co-authored-by: Valentin Churavy <vchuravy@users.noreply.github.com>
* use getCalledFunction
* fix insert choice * fix tests
* simplify trace interface * move trace interface into separate header * replace strings with constexpr * move sampe_func detection into TraceInterface
* Preserve invariant group properties on unwrap * fix remat bug
Both projects have moved, so point to their current location.
* Remove using namespace llvm from header files * Move implementation out of headers
* Move custom handler to preserve nvvm * Add test * fix * fix llvm tests * fix tests
* Simplify intrinsic activity * Add to list
Oh and subtrees are partly broken (git issue), so I just deleted and re-added the whole subtree, as I've already done it in the past. sry. |
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.
@bytesnake requires purging the build dir once, but gives us all the enzyme bugfixes from the last year.
Also fixes some bugs I ran into.