diff options
author | Nikita Popov <npopov@redhat.com> | 2024-01-31 12:24:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-31 12:24:35 +0100 |
commit | 5cc87b424be87db4247f34ae5477be8b09a573e9 (patch) | |
tree | e4c2ed240a601af0ccde11e1d4b641bde36dcf1b /clang/lib/Parse/ParseOpenMP.cpp | |
parent | cb6240d247b3419dea29eb99261171ea239b1c5c (diff) | |
download | llvm-5cc87b424be87db4247f34ae5477be8b09a573e9.zip llvm-5cc87b424be87db4247f34ae5477be8b09a573e9.tar.gz llvm-5cc87b424be87db4247f34ae5477be8b09a573e9.tar.bz2 |
[AsmParser] Add missing globals declarations in incomplete IR mode (#79855)
If `-allow-incomplete-ir` is enabled, automatically insert declarations
for missing globals.
If a global is only used in calls with the same function type, insert a
function declaration with that type.
Otherwise, insert a dummy i8 global. The fallback case could be extended
with various heuristics (e.g. we could look at load/store types), but
I've chosen to keep it simple for now, because I'm unsure to what degree
this would really useful without more experience. I expect that in most
cases the declaration type doesn't really matter (note that the type of
an external global specifies a *minimum* size only, not a precise size).
This is a followup to https://github.com/llvm/llvm-project/pull/78421.
Diffstat (limited to 'clang/lib/Parse/ParseOpenMP.cpp')
0 files changed, 0 insertions, 0 deletions