[all-commits] [llvm/llvm-project] 34b106: [AsmParser] Implicitly declare intrinsics (#78251)
Nikita Popov via All-commits
all-commits at lists.llvm.org
Wed Jan 17 00:36:03 PST 2024
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 34b106789ac2b3a0b8728e003dc63224a1d008fb
https://github.com/llvm/llvm-project/commit/34b106789ac2b3a0b8728e003dc63224a1d008fb
Author: Nikita Popov <npopov at redhat.com>
Date: 2024-01-17 (Wed, 17 Jan 2024)
Changed paths:
M llvm/lib/AsmParser/LLParser.cpp
A llvm/test/Assembler/implicit-intrinsic-declaration-invalid.ll
A llvm/test/Assembler/implicit-intrinsic-declaration.ll
Log Message:
-----------
[AsmParser] Implicitly declare intrinsics (#78251)
We currently require that all referenced globals have an explicit
declaration or definition in the IR. For intrinsics, this requirement is
redundant, because they cannot be called indirectly (including "direct"
calls with mismatched function type). The function type used in the call
directly determines the function type of the intrinsic declaration.
Relax this requirement, and implicitly declare any intrinsics that do
not have an explicit declaration. This will remove a common annoyance
when writing tests and alive2 proofs.
(I also plan to introduce a mode where declarations for all missing
symbols will be automatically added, to make working with incomplete IR
easier -- but that will be behind a default-disabled flag.)
More information about the All-commits
mailing list