Jonas Hahnfeld
2f99b68754
Fix clad build with LLVM_LIBDIR_SUFFIX
...
This fixes builtin_llvm=OFF builds on at least EL8 platforms that
currently have exactly LLVM 16.0.6.
2024-01-05 16:44:07 +01:00
Olivier Couet
7a987c29f6
Remove all the references to "drupal". ( #14273 )
...
* Remove all the references to "drupal".
* Apply ferdymercury changes. Thanks !
2023-12-20 09:29:05 +01:00
Devajith Valaparambil Sreeramaswamy
a085ccebac
Use deduction guides for llvm::ArrayRef
2023-12-13 13:29:07 +01:00
Devajith Valaparambil Sreeramaswamy
879eed2564
Replace llvm::Optional, llvm::None with their std equivalents
2023-12-13 13:29:06 +01:00
Jonas Hahnfeld
cf51c60306
Build demo with C++17
2023-12-12 18:59:06 +01:00
Jonas Hahnfeld
174d4529ab
Expect additional error in Prompt/BlockComments.C
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
25ebd992ac
Update expected types in output checks
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
a7dd6fde7e
Update expected error messages in tests
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
5fda6d38d2
Remove elaborated keyword from output checks
...
LLVM 16 honors how the declarations were written, without the class
or struct keywords.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
fc12e238fc
Remove expected space before array brackets in tests
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
908728f3b0
Expect normalized alias option offload_device_only
...
See also commit de84bfc508 during the previous LLVM upgrade...
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
444a841163
Fix preprocessor option parsing
...
Exclude options::DXCOption to avoid confusing the parser with the
second -E option.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
8c369bf487
Avoid unloading Decls not found in DeclContext
...
This fixes roottest/root/meta/tuple/exec_configtype_unload.C on Windows.
Co-authored-by: Bertrand Bellenot <Bertrand.Bellenot@cern.ch>
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
3d5ba159c6
Desugar UnaryTransformType
...
This fixes PyROOT's handling of smart pointers, such as shared_ptr,
with the new macOS SDK 14.0 resulting in a remove_extent transform.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
f636e21faa
Handle UsingType in GetPartiallyDesugaredType
...
According to https://github.com/llvm/llvm-project/commit/af27466c50 ,
it is used to represent types pulled in with a using declaration, for
example `using std::error_code; error_code x;`.
This fixes the build of the ROOTTMVASofie module on macOS where this
was causing `std::size_t` not be fully desugared to `unsigned long`
at first to later end up with two identical classes in a list that
must not have duplicates.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
78f9595644
Update registration of atexit handlers
...
GenericLLVMIRPlatformSupport now declares atexit, which leads to a
duplicate symbol error during startup and fails the transaction.
Completely switch to the provided infrastructure and just override
the helpers to register the functions with our Interpreter.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
a1598cba14
Update handling of ElaboratedType in GetFullyQualifiedType
...
In LLVM 16, we now get ElaboratedType far more often, but they don't
have all namespace qualifiers we need. This fixes the build of the
RooFitCore module, but many other places are likely affected as well.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
f62bbfff85
Remove extension of legacy pass manager
...
adjustPassManager was only used for a few backends, such as AMDGPU
and NVPTX, but not on the CPU architectures we care about.
The DiscriminatorsPass was also removed upstream Clang, see commit
https://github.com/llvm/llvm-project/commit/2978d02681 .
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
6960639412
Adapt to updated forgetDecl signature
...
The GlobalDecl parameter wasn't used since quite some time.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
826478d826
Don't print name of EnumDecl if there is none
...
The function overload without PrintingPolicy is not available in
LLVM 16, see https://reviews.llvm.org/D134813 .
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
6bfe4c2213
Misc adaptations for updated APIs
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
3b4ec36268
Set MSVolatile in LangOpts
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
733c2eadfa
Remove PMBuilder members
...
These two fields don't exist anymore in LLVM 16.
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
8994be448b
Resource directory based on major version only
2023-12-11 08:59:21 +01:00
Jonas Hahnfeld
f4951f96e9
Update InvocationOptions
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
aa2213e121
Update for new FileNotFound callback
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
2c98e68e68
Lexer does not expose getLangOpts() anymore
...
Store a reference ourselves. Also Lexer::isIdentifierBodyChar() was
renamed to Lexer::isAsciiIdentifierContinueChar().
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
95a4fc8875
Adapt and heavily simplify ClingJITLinkMemoryManager
...
Now we can just inherit from InProcessMemoryManager and override the
deallocate() method.
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
799baa2781
Some changes from JITEvaluatedSymbol to ExecutorAddr
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
1f68ba7928
MultiLevelTemplateArgumentList
...
... takes a Decl and a boolean argument Final.
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
15b5de6398
getQualifiedTemplateName takes a TemplateName
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
85c348828f
CompoundStmt::Create takes FPOptionsOverride
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
d5aec8274b
Adapt arguments for updated APIs
...
Forwarding data (differently) or passing trivial parameters.
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
fae810094c
Misc renamings and type changes
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
1144ecf217
Update ClingMemoryManager with llvm::Align
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
fb4be6f374
InclusionDirective takes an clang::OptionalFileEntryRef
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
490a3a9359
LookupFile takes arguments as ConstSearchDirIterator
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
2113534493
llvm::Optional::hasValue was renamed to has_value
2023-12-11 08:59:20 +01:00
Jonas Hahnfeld
2213f5ca92
TargetRegistry.h moved to MC/
2023-12-11 08:59:20 +01:00
Vassil Vassilev
ada3befa98
Bump cling version to 1.1~dev.
2023-12-09 17:44:02 +01:00
Vassil Vassilev
ab81cdcc61
Prepare for releasing cling v1.0
2023-12-09 16:44:07 +01:00
Vassil Vassilev
fa520028cb
Add docs how to build from the mono repo
2023-12-09 09:44:03 +01:00
Axel Naumann
33084d36ad
Revert "[Cling] Simplify std::tuple/pair value printer"
...
This reverts commit bfbb58e6f74c38b883ce6e6e096b6c6e44028869.
cling needs to be able to interpret C++11, even if built with C++17.
2023-12-09 09:29:10 +01:00
Jonas Hahnfeld
aacb57ada4
Provide fallback for LLVM_INCLUDE_DIRS
...
In standalone builds, it could otherwise happen that the variable is
not set during the first CMake invocation and tests fail because they
are unable to locate the LLVM headers.
2023-12-05 15:44:05 +01:00
Axel Naumann
cbd1dcf8da
test/Driver/CommandHistory.C: env -u
also works on macOS.
2023-12-05 15:44:05 +01:00
Vassil Vassilev
93153b9971
Correctly infer the SDKROOT.
...
This fixes the -lSystem issues we saw on recent osx platforms.
2023-12-05 14:14:03 +01:00
Vassil Vassilev
8069aa7a73
Handle llvm::Errors correctly.
...
This fixes several tests on osx.
2023-12-05 14:14:03 +01:00
Jonas Hahnfeld
5cf51d53dd
Handle variable templates in DeclUnloader
...
Fixes #13815
2023-11-30 09:29:02 +01:00
Jonas Hahnfeld
df71846ee9
Refactor unloading of template specializations
...
Also quite a bit of simplification.
Co-authored-by: Axel Naumann <Axel.Naumann@cern.ch>
2023-11-30 09:29:02 +01:00
Jonas Hahnfeld
788b2b2be7
DeclUnloader: Avoid iterator invalidation
...
... when unloading template declarations and their specializations.
2023-11-30 09:29:02 +01:00