aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Analysis/LazyCallGraph.cpp
diff options
context:
space:
mode:
authorArthur Eubanks <aeubanks@google.com>2025-02-14 16:35:16 -0800
committerGitHub <noreply@github.com>2025-02-14 16:35:16 -0800
commit28c52edbe33e671ace58309e60598f3342e9ca73 (patch)
tree1a82fa7dd23943cee07a6b6c2011addc1ff8967b /llvm/lib/Analysis/LazyCallGraph.cpp
parent77041da98932f77896d48366703d956ae7a82036 (diff)
downloadllvm-28c52edbe33e671ace58309e60598f3342e9ca73.zip
llvm-28c52edbe33e671ace58309e60598f3342e9ca73.tar.gz
llvm-28c52edbe33e671ace58309e60598f3342e9ca73.tar.bz2
[clang][X86] Support __attribute__((model("small"/"large"))) (#124834)
Following up #72078, on x86-64 this allows a global to be considered small or large regardless of the code model. For example, x86-64's medium code model by default classifies globals as small or large depending on their size relative to -mlarge-data-threshold. GPU compilations compile the same TU for both the host and device, but only codegen the host or device portions of it depending on attributes. However, we still Sema the TU, and will warn on an unknown attribute for the device compilation since this attribute is target-specific. Since they're intended for the host, accept but ignore this attribute for device compilations where the host is either unknown or known to support the attribute. Co-authored-by: @pranavk
Diffstat (limited to 'llvm/lib/Analysis/LazyCallGraph.cpp')
0 files changed, 0 insertions, 0 deletions