aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineScheduler.cpp
diff options
context:
space:
mode:
authorBruno Cardoso Lopes <bruno.cardoso@gmail.com>2025-03-02 19:18:55 -0800
committerGitHub <noreply@github.com>2025-03-02 19:18:55 -0800
commitdb0e7c72aff622849abbc92c3ed0d06efb8e2d16 (patch)
tree3bc251a04640795ed470f0976b76b2bdb4c9b576 /llvm/lib/CodeGen/MachineScheduler.cpp
parentcb7030dbe7f3f1947c31b3059958ff3968cc22ff (diff)
downloadllvm-db0e7c72aff622849abbc92c3ed0d06efb8e2d16.zip
llvm-db0e7c72aff622849abbc92c3ed0d06efb8e2d16.tar.gz
llvm-db0e7c72aff622849abbc92c3ed0d06efb8e2d16.tar.bz2
Reapply [MLIR][LLVMIR] Import unregistered intrinsics via llvm.intrin… (#129174)
…sic_call Original introduced in https://github.com/llvm/llvm-project/pull/128626, reverted in https://github.com/llvm/llvm-project/pull/128973 Reproduced the issue on a shared lib build locally on Linux, moved content around to satisfy both static and shared lib builds. ### Original commit message Currently, the llvm importer can only cover intrinsics that have a first class representation in an MLIR dialect (arm-neon, etc). This PR introduces a fallback mechanism that allow "unregistered" intrinsics to be imported by using the generic `llvm.intrinsic_call` operation. This is useful in several ways: 1. Allows round-trip the LLVM dialect output lowered from other dialects (example: ClangIR) 2. Enables MLIR-linking tools to operate on imported LLVM IR without requiring to add new operations to dozen of different targets. If multiple dialects implement this interface hook, the last one to register is the one converting all unregistered intrinsics. --------- Co-authored-by: Bruno Cardoso Lopes <bcardosolopes@users.noreply.github.com>
Diffstat (limited to 'llvm/lib/CodeGen/MachineScheduler.cpp')
0 files changed, 0 insertions, 0 deletions