2443 Commits

Author SHA1 Message Date
Philippe Canal
aad9a7a391 Implemenation a section level allocator in cling's RTDyldMemoryManager (Azog).
This allow for a single allocation at the beginning of the module and insure that
all the section of the module with be contiguous in memory.

This is a better fix for Fix ROOT-8523 and replace commit
3f7418269714e12d9fc4f17d197fde7199dbae7d (see more detail about
the problem it the log of that commit)
2017-01-31 22:59:25 +01:00
Philippe Canal
e7c289878a Enable GDB listener / obj registration.
This allows debuggers to see the actual content of the JIT part of a stack trace.

This revert per se 9428c1f1907b3f01208dcc6095c5707011621310
2017-01-31 22:59:25 +01:00
Frederich Munch
13aad4bedd Cast function pointers legally. Add Utils/Casting.h 2017-01-25 16:59:13 +01:00
Frederich Munch
728ac03921 Windows: Add compiler flags to ignore linkage spec errors. 2017-01-25 15:14:12 +01:00
Frederich Munch
990eed5dce Remove unused member variable in ExternalInterpreterSource. 2017-01-25 12:14:06 +01:00
Frederich Munch
e4c24a133a Move IncrementalExecutor::CreateHostTargetMachine into IncrementalExecutor.cpp. 2017-01-25 12:14:06 +01:00
Frederich Munch
14f41fefe2 Define NDEBUG on all platforms. 2017-01-25 11:14:13 +01:00
Frederich Munch
8689e14eb6 Fix assertion test for null terminated string. 2017-01-25 11:14:12 +01:00
Frederich Munch
7462509f7f Don’t import UsingDecl or UsingShadowDecl. Fixes atexit test failure on gcc on OS X. 2017-01-25 11:14:11 +01:00
Frederich Munch
8daa5bcf11 Fix atexit function declarations for gcc and add test. Fix mangling issues for at_quick_exit and g++ headers. 2017-01-25 11:14:11 +01:00
Frederich Munch
af8e34dcaa Fix exit functions when nullptr is not a keyword. 2017-01-25 11:14:11 +01:00
Frederich Munch
545d093af6 Windows: Remove function pointer typedef polluting global scope. 2017-01-25 11:14:11 +01:00
Frederich Munch
d2457c5c13 Windows: Remove managed at/on exit wrappers. 2017-01-25 11:14:11 +01:00
Frederich Munch
426bebc168 Windows: Add managed variants of at/on exit functions. 2017-01-25 11:14:11 +01:00
Frederich Munch
0d15357a12 Full implementation to override atexit and similar calls. 2017-01-25 11:14:11 +01:00
Frederich Munch
06ef061569 Implement atexit override. Windows uses atexit is to drive invoke static destructors, and using atexit on other platforms will cause cling to crash. 2017-01-25 11:14:11 +01:00
Frederich Munch
b012e3950c Fix return value for __cxa_atexit. 2017-01-25 11:14:10 +01:00
Frederich Munch
4b1389bf38 Add platform::Demangle function. 2017-01-24 12:29:35 +01:00
Frederich Munch
2e2d44e995 Fix API usage error in LLVM unicode routines. Use reinterpret_cast to force compile time errors. 2017-01-20 20:59:08 +01:00
Frederich Munch
811840740d Windows: Force console output to UTF-8. 2017-01-18 16:43:26 +01:00
Frederich Munch
de5363ee63 Fix UTF-8 output when using g++ on OS X. 2017-01-18 15:59:12 +01:00
Frederich Munch
5e0a4b1fb1 Use LLVM for Unicode conversion on gcc < 5. Force export of toUTF8 specializations otherwise. 2017-01-18 15:59:12 +01:00
Frederich Munch
b48d0c3779 Windows: Fix wchar_t and wstring_convert on MSVC. 2017-01-18 15:59:12 +01:00
Frederich Munch
08f8c4fa80 Move to UTF-8 string conversion into separate module. Support UTF-8 output on Windows. 2017-01-18 15:59:12 +01:00
Frederich Munch
7eea9235da Have Value::dump write unicode and strings with embedded data properly. 2017-01-18 15:59:12 +01:00
Frederich Munch
f39f1f7318 Fix C-string printing for safety, speed, and data loss. Prior behavior assumed both pointer and pointer+10000 were valid memory. Add override for const char arrays so that they can be printed faster. Make cling::printValue a lossless operation. Previously strings with non-ASCII printable chars were transformed into an invalid c-string and the data could not be used to recreate the string. 2017-01-18 15:59:11 +01:00
Frederich Munch
fb96f9c040 Support unicode std::strings. 2017-01-18 15:59:11 +01:00
Axel Naumann
63482c499d Do not wait for a "*" if there is any other token after the "/" (ROOT-8529). 2017-01-13 11:59:10 +01:00
Axel Naumann
cfbf9ee8c8 Return whether there was a (non-punct) token between now and next (ROOT-8529). 2017-01-13 11:59:10 +01:00
Vassil Vassilev
bb2de6d3b0 Disambiguate which TargetOptions class we need.
Improves readability and works around a subtle modules bug.
2017-01-12 17:14:07 +01:00
Axel Naumann
8579aea04d Style. 2017-01-12 11:14:34 +01:00
Axel Naumann
bfe5e722e4 Grab the diag count from the target. 2017-01-12 11:14:34 +01:00
Axel Naumann
d02d88ac18 Turn on prompt diags if not raw input. 2017-01-12 11:14:34 +01:00
Axel Naumann
a5581de0fd Fix warning: moving a temporary object prevents copy elision. Thanks, clang! 2017-01-10 16:14:10 +01:00
Axel Naumann
8c3e5b2e2b Reset error count when hitting ext_return_has_expr. 2017-01-10 15:59:34 +01:00
Axel Naumann
4b78d08dfa Use a filtering diagclient for prompt input.
Before, cling was thrashing the location specific diag map making any diag emission really slow.
2017-01-10 15:59:34 +01:00
Axel Naumann
2c0cad5b49 Whitespace. 2016-12-20 14:14:04 +01:00
Frederich Munch
dbb5aa6186 Remove ForceSymbolsAsUsed from Interpreter.h. 2016-12-20 14:14:04 +01:00
Frederich Munch
f846990f8d Windows: Fix InterpreterException not being caught and terminating. 2016-12-20 12:59:08 +01:00
Frederich Munch
4d41bd315f Make InterpreterException::diagnose virtual and return a boolean. Refactor inheritance chain for InterpreterException. 2016-12-20 12:59:08 +01:00
Frederich Munch
d68ef916ac Use LLVM stream wrappers to reduce complexity and line counts. 2016-12-20 12:29:06 +01:00
Axel Naumann
c1e79e499d From Roman Zulak: Flush stdout less (textinput part). 2016-12-19 15:04:23 +01:00
Axel Naumann
43fe0be0a0 From Roman Zulak: Flush stdout less (cling). 2016-12-19 13:59:11 +01:00
Frederich Munch
1aabc2dbe0 Add simple wrappers for buffered LLVM streams. Use them to control Value printing format. 2016-12-19 13:59:11 +01:00
Frederich Munch
075f4ffa83 Add cling output streams to cling/Utils/Output.h 2016-12-19 13:59:11 +01:00
Bertrand Bellenot
ddca7a12a2 Speling. 2016-12-19 12:14:26 +01:00
Vassil Vassilev
06704a97fb Tabs. 2016-12-17 21:14:25 +01:00
Frederich Munch
2897531390 Windows: Fix crash on aliased globals 2016-12-15 14:29:09 +01:00
Frederich Munch
7ee942f14e Windows: Avoid mangling Dtor_Comdat 2016-12-15 14:29:09 +01:00
Frederich Munch
8644c890f4 Windows: Fix crash on unloading of Dtor_Comdat destructors. 2016-12-15 14:29:09 +01:00