Jonas Hahnfeld
3e59d62c9c
Simplify addOrReplaceDefinition
...
Calling getSymbolAddress will force symbol emission, which is not
needed if the intent is to replace it.
2024-07-03 08:29:06 +02:00
Jonas Hahnfeld
c201269a09
Simplify symbol overrides
...
There is no need to force symbol emission, get the address from the
JIT, and then replace the symbol once more.
2024-07-03 08:29:06 +02:00
Devajith Valaparambil Sreeramaswamy
900be1d0e8
Simplify mangling by using mangleAndIntern
2024-06-26 09:29:06 +02:00
ferdymercury
48788e4034
Remove link to rawgit as it will shut down
...
Fixes https://github.com/root-project/cling/issues/339
From main RawGit Webpage: If you're currently using RawGit, please stop using it as soon as you can.
2024-06-24 20:59:05 +02:00
Jonas Hahnfeld
bb6c527ccc
std_darwin.modulemap: Remove headers for MacOSX15.0.sdk
...
Manually curating the modulemap is far from ideal because it requires
updates for changes in the libc++ library shipped with the SDK, which
must also work across all supported SDK versions. An alternative would
be to locate the modulemap shipped with libc++ during configuration
time, copy it and dynamically modify its contents to suit our needs.
2024-06-24 08:29:06 +02:00
Danilo Piparo
2f17f4b4eb
Propagate the sized-deallocation to the compiler instance
...
explicitly if the compiler enables it.
2024-06-07 14:29:06 +02:00
Yong Gyu Lee
a462500c3a
Add non-common_range test to Regression.C
2024-05-30 14:14:03 +02:00
Yong Gyu Lee
7dc8c9aca9
Fix diagnostic failure if an object return different types for begin() and end()
2024-05-30 14:14:03 +02:00
Maxim Cournoyer
d73fdd2198
build: Modernize handling of external LLVM library.
...
* CMakeLists.txt: Remove llvm-config related code, instead using
modern 'find_package' constructs.
Fixes: <https://github.com/root-project/cling/issues/430 >
2024-05-27 07:29:02 +02:00
Vassil Vassilev
9cd87082a9
Bump clad to version v1.5
...
This new release includes several fixes helping to scale the RooFit AD backend.
See more at: https://github.com/vgvassilev/clad/releases/tag/v1.5
2024-05-21 12:29:05 +02:00
Bertrand Bellenot
efa55e40ed
Export missing symbols
...
Export the following missing symbols:
```
void * __ptr64 __cdecl operator new(unsigned __int64,struct std::nothrow_t const & __ptr64)
void * __ptr64 __cdecl operator new[](unsigned __int64,struct std::nothrow_t const & __ptr64)
```
and
```
void * __cdecl operator new[](unsigned int,struct std::nothrow_t const &)
void * __cdecl operator new(unsigned int,struct std::nothrow_t const &)
```
Fixes root-project/cling#442
2024-05-14 15:44:06 +02:00
Vincenzo Eduardo Padulano
312f39020b
Comply with CMP0148
...
See https://cmake.org/cmake/help/latest/policy/CMP0148.html
2024-05-13 19:59:07 +02:00
ferdymercury
3229b9a2db
remove remnant declaration of removed function
...
Function was removed here c23abbc88b
Fixes https://github.com/root-project/cling/issues/456
2024-05-11 12:44:05 +02:00
Jonas Rembser
4bd3f6b6fb
Look for Python3 again in SearchInstalledSoftware.cmake
...
This commit essentially reverts a288ff9 from four years ago, which was
also part of the multi-python machinery that is not necessary anymore
after Python 2 support was dropped.
Also, make the choice of looked-up components consistent with what is
actually required.
2024-05-08 15:14:07 +02:00
Bertrand Bellenot
3cc2a4dd8d
Add support for Visual Studio >= v17.10
2024-05-08 10:44:03 +02:00
Jonas Hahnfeld
65a2a778d1
Fix build with assertions
...
Fixes commit 68769cd980 ("[cling] Move parts of Parse to another
function").
2024-05-07 11:59:05 +02:00
Jonas Rembser
be35aaef26
Only build clad
plugin if requested
...
Building clad should not depend on the result of the connectivity check,
but whether it is enabled.
2024-05-06 21:44:06 +02:00
Devajith Valaparambil Sreeramaswamy
4f2c339d5c
Remove m_MemoryBuffers
completely
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
ab2f942c8e
Remove usage of DiagnosticErrorTrap
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
db76f2a502
Move closer to upstream
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
a943f62f14
Remove unneeded ifdefs
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
517ba1c546
Move processing of TopLevelDecls
to the function
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
35b1b01abe
Remove CrashRecoveryContextCleanupRegistrar
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
f4471da415
Move parts of Parse to another function
2024-05-06 16:59:09 +02:00
Devajith Valaparambil Sreeramaswamy
419c25e5f2
Use ThreadSafeContext
2024-05-06 16:59:09 +02:00
Vassil Vassilev
6e171ffe93
Remove never used code from the callbacks.
...
This will allow us to simplify our ASTConsumer model instead of creating many
multiplexers that are not needed. That should simplify adoption of latest
versions of clad.
2024-05-02 10:59:05 +02:00
Devajith
f9b7ba1430
Add plugin support ( #15169 )
...
Add plugin support and pass LLVM arguments after plugins have been loaded.
2024-04-12 15:59:08 +02:00
Vassil Vassilev
3750135c31
Allow for changing the modulemap name to match the overlay.
...
Fixes #14964
2024-03-25 14:59:08 +01:00
Kai Luo
abeda742aa
Backport jitlink ppc64 ( #13850 )
...
* Backport JITLink ppc64 backend to LLVM-16
* Backport ELF part
* Backport PCREL relocations
* Use jitlink::Section::blocks::empty instead
* Backport TLS PCREL relocation
* [llvm-project] Synchronize with LLVM monorepo fork
---------
Co-authored-by: Jonas Hahnfeld <jonas.hahnfeld@cern.ch>
2024-03-21 15:59:05 +01:00
Vassil Vassilev
eac26aa98e
Do not overlay on top of the unix modulemaps.
...
We should have separate cases for unix and apple, otherwise the modulemaps go
on top of each other.
2024-03-21 13:59:06 +01:00
Vassil Vassilev
ccc4b87fe7
Fix libcxx on osx15.3
2024-03-12 10:59:08 +01:00
Bertrand Bellenot
057bdb107a
Fix Clad debug build on Windows
2024-03-06 14:14:05 +01:00
Vassil Vassilev
81c365f899
Bump clad version to v1.4.
...
This new release includes several fixes helping to simplify RooFit AD backend.
See more at: https://github.com/vgvassilev/clad/releases/tag/v1.4
2024-03-05 18:14:06 +01:00
Devajith Valaparambil Sreeramaswamy
c917ab56f3
Add TableGen-based generator for command line arguments
...
Upstream moved away from manually declaring `*def` and `*inc` files. These
are now auto-generated with tablegen. This patch does the same for cling,
making it easier to rebase and maintain.
2024-02-23 09:59:07 +01:00
Devajith Valaparambil Sreeramaswamy
c5692e71f1
Use StringRef::{starts,ends}_with
...
Follows the changes introduced in https://reviews.llvm.org/D136030
2024-02-23 09:44:06 +01:00
Devajith Valaparambil Sreeramaswamy
aa6d4924b5
Add test for std::filesystem::path
2024-02-16 15:59:04 +01:00
Devajith Valaparambil Sreeramaswamy
75b1314f6b
Implement value printing for std::filesystem::path
2024-02-16 15:59:04 +01:00
Jonas Hahnfeld
fa648e8fa5
Fix disabling optimizations with CLING_DEBUG
...
As noted in #14593 , the build fails during a rootcling execution when
setting CLING_DEBUG=1 in the environment with
error: invalid integral value '0 -fno-omit-frame-pointer' in '-O0 -fno-omit-frame-pointer'
Upon investigation, it only works in the ROOT prompt because TCling
turns on basic -O1 unless in rootcling. This overrides the (misformed)
"-O0 -fno-omit-frame-pointer". Split the argument in two entries and
move it after inserting the user-provided arguments to properly apply
also on the prompt by now taking precedence over -O1.
Closes #14593
2024-02-14 08:44:06 +01:00
Vassil Vassilev
45d9a081c4
Bump clad version to v1.3. ( #14654 )
...
This new release includes performance and stability improvements.
See more at: https://github.com/vgvassilev/clad/releases/tag/v1.3
2024-02-12 22:59:07 +01:00
Devajith Valaparambil Sreeramaswamy
1c6031a02a
Explicitly disable RelLookupTableConvertedPass
...
Before the passmanager update, the function `populateModulePassManager`
was called instead of `buildPerModuleDefaultPipeline` to set the default
passes. But the former did not have `RelLookupTableConverterPass` turned on
by default.
2024-02-08 13:29:21 +01:00
Devajth Valaparambil Sreeramaswamy
1b5103e180
Manually call buildO0DefaultPipeline for the new pass manager
...
Revert this commit once we have https://reviews.llvm.org/D146200
2024-01-30 09:44:04 +01:00
Devajth Valaparambil Sreeramaswamy
c444493f27
Add callback to not run inliner passes for OptLevel <= 1
...
Inliner passes disabled with the callback:
- ModuleInlinerWrapperPass
- InlineAdvisorAnalysisPrinterPass
- PartialInlinerPass
- buildInlinerPipeline
- ModuleInlinerPass
- InlinerPass
- InlineAdvisorAnalysis
- PartiallyInlineLibCallsPass
- InlineCostAnnotationPrinterPass
- InlineSizeEstimatorAnalysisPrinterPass
- InlineSizeEstimatorAnalysis
2024-01-30 09:44:04 +01:00
Devajith Valaparambil Sreeramaswamy
80b69f0737
Move from legacy to new pass manager
...
It is recommended to use a new instance of analysis managers every time
we perform codegen as the analyses might not be cleared. Upstream does
not have any instance where populating pass/analysis managers and
running passes are separated.
2024-01-30 09:44:04 +01:00
Axel Naumann
e5b63c66a6
Support bare #
in input line: ( #14109 )
...
fixes #11190 .
Co-authored-by: Devajith Valaparambil Sreeramaswamy <devajith.valaparambil.sreeramaswamy@cern.ch>
2024-01-25 15:29:08 +01:00
Devajth Valaparambil Sreeramaswamy
67a415356d
Add source_location test
2024-01-17 16:29:04 +01:00
Devajith Valaparambil Sreeramaswamy
254f3d57ad
Implement value printing for std::source_location
2024-01-17 16:29:04 +01:00
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