Commit Graph

2062 Commits

Author SHA1 Message Date
Axel Naumann
00fd3dbc12 FIXUP: cling/lib/Utils/AST.cpp extra ) 2016-06-15 14:14:33 +02:00
Axel Naumann
961e00ac2f llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
b1d025d12f llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
8543e1cedb llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
565033adc4 llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
d4b3ac77f2 Use StoredDeclsList::HandleRedeclaration instead of home-grown.
llvm upgrade; might need to revisit for unload failures.
2016-06-15 14:14:33 +02:00
Axel Naumann
5a853a501a llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
61e474fda4 llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
319f68f3f1 llvm upgrade. Revisit symbol resolution + error, move to lambda. 2016-06-15 14:14:33 +02:00
Axel Naumann
377498e147 llvm upgrade. Possibly revisit (debug info, frame ptr). 2016-06-15 14:14:33 +02:00
Axel Naumann
7a620e3f79 llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
681eacc4bc llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
3fc989558d llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
78f8a846bd llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
f844b88e5c llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
95b1b5a961 llvm upgrade. 2016-06-15 14:14:33 +02:00
Axel Naumann
67539cd6af llvm upgrade. 2016-06-15 14:14:32 +02:00
Axel Naumann
7aa512757c DenseMap<const Transaction*,...> now needs definition of cling::Transaction. 2016-06-15 14:14:32 +02:00
Axel Naumann
205a978506 Update to new llvm interfaces. 2016-06-15 14:14:32 +02:00
Philippe Canal
c04d224941 Add assert to be explicit about seg fault 2016-06-08 18:44:10 +02:00
Philippe Canal
c3f961aa67 Avoid unnecessary temporary 2016-06-08 04:29:08 +02:00
Philippe Canal
5e2fe4b0f0 Fix ROOT-8096
Add proper support for template parameter pack in
cling::ForwardDeclPrinter::VisitTemplateArgument
2016-05-17 14:44:42 +02:00
CristinaCristescu
6ba8b80abf Explain unharmful behaviour of address validity cache. 2016-05-09 16:29:07 +02:00
CristinaCristescu
c77ce1d672 Replace the llvm::thread_local with and atomic push.
The atommic operation does the increment and the mod to the number of cache lines
to ensure we are not trying to access memory out of the cache.
2016-05-09 09:44:09 +02:00
Philippe Canal
972c28b439 Remove unused function (in unnamed namespace) 2016-05-04 19:44:07 +02:00
Philippe Canal
3a5dd3a381 Remove unused variable 2016-04-30 05:44:31 +02:00
Philippe Canal
928969ebbd Remove unused variable 2016-04-30 05:44:31 +02:00
Philippe Canal
47513bfc9f Remove some memory hoarding by cling's findFunction.
Avoid creating a CXXScopeSpec (and a NestedNameSpecifierLoc) just to check whether we need
to complete a decl.
2016-04-28 17:44:30 +02:00
Axel Naumann
29c0b8c742 Fix fatal spelling error. 2016-04-26 12:14:07 +02:00
CristinaCristescu
da2190ecf1 Correct CO for DeclareInternal in cling:Interpreter::process. 2016-04-26 08:44:17 +02:00
CristinaCristescu
9cff82d107 Enable Pointer validity check for loadFile and process (user code). 2016-04-22 21:14:07 +02:00
CristinaCristescu
ac18e69a68 Create option for disabling the Pointer check in cling::Interpreter::declare.
To improve performance we limit the use of the Pointer validity check
and remove it from cling::Interpreter::declare.
To do this we introduce a Compilation Option which is used by the
ASTTransformer through Transaction.
2016-04-22 21:14:07 +02:00
Axel Naumann
6f3a95eef2 Doxygen. 2016-04-22 12:29:14 +02:00
CristinaCristescu
60a1b6bca4 Remove redundant test for CXXThisExpr in NullDeref. 2016-04-22 11:44:51 +02:00
CristinaCristescu
afdb4e75a7 Memory leak due to undeleted pointer. 2016-04-21 19:14:47 +02:00
Axel Naumann
8e5514f5b5 Only inject pointer checks if we run.
Fixes an issue visible on Ubuntu, where we deserialize a pointer check call from the PCH, that now has completely bogus (deserialized) pointers to Expr and Sema.
2016-04-21 19:14:47 +02:00
Oliver Freyermuth
304529ba41 MultiplexInterpreterCallbacks: Also multiplex the PrintStackTrace through here. 2016-04-21 19:14:47 +02:00
Oliver Freyermuth
271a0a1829 ExceptionRTTI: Only do dereferencing of Interpreter / Sema if pointer is really nullptr / invalid.
This fixes the crash on startup / during static initialization.
The Interpreter-argument given to cling_runtime_internal_throwIfInvalidPointer during
static initialization is not yet valid.
Only dereferencing in case an error was really diagnosed is also more efficient.
2016-04-21 19:14:47 +02:00
Axel Naumann
cec046a44f Dump stack trace when throwing a null deref exception. 2016-04-21 19:14:47 +02:00
Axel Naumann
50bfb01db7 NullDerefProtectionTransformer is not a WrapperTransformer anymore. 2016-04-21 19:14:47 +02:00
Axel Naumann
dc32ab8e73 Use /dev/random, some kernels skip writing to /dev/null. 2016-04-21 19:14:47 +02:00
Axel Naumann
6c3bb2daef Refinements: use std::array+find, comments, func names. 2016-04-21 19:14:47 +02:00
CristinaCristescu
6dc84b0f29 Improve performance of address validation of interpreted code. 2016-04-21 19:14:47 +02:00
Axel Naumann
739a3c962c Fix decl / impl noexcept mismatch; throw() -> noexcept. 2016-04-21 19:14:47 +02:00
Axel Naumann
bb7b60959b Sort the source files closer to alphabetical order. 2016-04-11 12:14:17 +02:00
Axel Naumann
ea41f5b87e Split Exception.cpp into a part that does and does not need RTTI.
ROOT needs to dynamic_cast a std::exception to an InterpreterException - that only works if the latter has rtti.
2016-04-11 12:14:17 +02:00
Axel Naumann
ac3d7022f0 Update required symbol cling_runtime_internal_throwIfInvalidPointer. 2016-04-09 10:44:32 +02:00
CristinaCristescu
1cb874532b Correct DiagnoseIfInterpreterException in iterpreter. 2016-04-08 15:44:11 +02:00
CristinaCristescu
0fb177cbf2 Do not check null deref for static data members calls. 2016-04-08 15:44:11 +02:00
CristinaCristescu
fc500ad68e Reduce I/O operations caused by the check of address validity. 2016-04-08 15:44:11 +02:00