Frederich Munch
a2fd30a8d5
Don't reallocate MetaLexer on the heap for every line. Its a waste of time for 24 bytes that will be needed for every line anyway. Remove bufferEnd field as it was entirely unused.
2016-12-12 12:29:38 +01:00
Axel Naumann
c54f88ce6a
Silence unused param warning, if this is what this should do?
2016-12-08 12:14:16 +01:00
Axel Naumann
763b36c042
HandleResizeSignal() needs fOutputID; initialize it first.
2016-12-08 12:14:16 +01:00
Frederich Munch
9edf676001
Remove call to fsync.
2016-12-08 12:14:01 +01:00
Frederich Munch
feedccb427
Fix tty/console output prompt when piping to a file.
2016-12-08 12:14:01 +01:00
Frederich Munch
d82d144e43
Windows: Fix tty/console when input is piped in.
2016-12-08 12:14:01 +01:00
Frederich Munch
354b080f0f
Windows: Fix undefined symbols introduced in 0d50cea
. clang::LangOptions::setStackProtector(SSPStrong) requires bufferoverflowu.lib.
2016-12-08 10:29:09 +01:00
Frederich Munch
72c78e65e7
Make ClangInternalState more const correct.
2016-12-02 14:14:06 +01:00
Frederich Munch
94b62b2220
Add verbosity argument to ClangInternalState::compare.
2016-12-02 14:14:06 +01:00
Frederich Munch
020b83c452
Fix using llvm::StringRef data as c-string.
2016-12-02 14:14:06 +01:00
Axel Naumann
4b5f2c6b15
Silence warnings.
2016-12-01 17:29:08 +01:00
Bertrand Bellenot
f67fbca15b
Revert previous change ("extern" was not the problem)
2016-12-01 17:14:05 +01:00
Bertrand Bellenot
43c8a82180
Remove extra "extern" qualifier
...
Fix cling.exp : error LNK2001: unresolved external symbol "char const * const cling::valuePrinterInternal::kEmptyCollection"
2016-12-01 11:59:05 +01:00
Bertrand Bellenot
5d0e1af50c
Filter out non-Windows include
2016-12-01 10:24:47 +01:00
Bertrand Bellenot
a855e3b679
Call ASCII Windows functions.
2016-12-01 10:24:47 +01:00
Bertrand Bellenot
0d50cea5ca
Sync clang and cling options on Windows.
2016-11-30 10:14:14 +01:00
Bertrand Bellenot
23d3c1669d
Use simple LoadLibrary() function
2016-11-30 10:14:13 +01:00
Bertrand Bellenot
aa5b7fe2ce
Do not force non-unicode.
2016-11-30 10:14:12 +01:00
Axel Naumann
ef8d80dc57
Make .x file name mangling partial again; explain why.
2016-11-29 08:29:17 +01:00
Philippe Canal
7a682ff1d7
remove stray semi-colon
2016-11-28 17:59:50 +01:00
Philippe Canal
5fc745247f
Reduce code duplication by using fall through
2016-11-28 17:44:16 +01:00
Philippe Canal
1d0c1e0156
Mangle all funny file names for .x function (ROOT-8467).
2016-11-28 17:44:15 +01:00
Axel Naumann
9be463964e
Mangle funny file names for .x function (ROOT-8467).
2016-11-28 14:59:17 +01:00
Roman Zulak
d538956101
Enclose string in place.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:35 +01:00
Roman Zulak
87415d29a9
Don't allocate a new string just for output.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:35 +01:00
Roman Zulak
a0fa470342
Print typedefs inside templated containers nicer.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:35 +01:00
Roman Zulak
5e6f6cc295
Remove invokePrintValueOverload function. It was doing redundant work and made it harder to understand the control flow.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:35 +01:00
Roman Zulak
a3e6a93f46
Use constant strings for special value types.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
1e004e9d3a
Fix printing of collections. Make it impossible for a collection with 1 element to match the string of an empty collection. Avoid checking if comma needs to be added in loop. Make an empty tuple print same as empty collection: '{}'.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
65bba29867
Windows: Fix printing adresses as hexadecimal. Refactor into common function. Remove useless intermediate allocations/objects.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
c91e902f58
Windows: Fix print QualType's that can be severely hidden in layers of typedefs.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
79c52100cf
Print QualType directly to string.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
aee507151a
Use stack based stream and correct scope.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
6e951774bb
Cleanup/optimize getTypeString.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
d15125b329
Reduce invokePrintValueOverload further. Remove inconsequential or redundant type checks.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
3943be660f
Cleanup invokePrintValueOverload.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Roman Zulak
9b22811f89
Remove unnecessary includes and defines.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-21 12:44:34 +01:00
Philippe Canal
d3a3fbf401
In AutoloadingVisitor use the top and direct header filename.
...
The two header filenames are recorded as two distincts annotation attribute so we now need to iterate through the attributes.
2016-11-18 01:29:09 +01:00
Philippe Canal
95c6491b4c
In ForwardDeclPrinter records both the top level header and the directly accessible lower level header (when different).
...
This allows to catch the case where the user generate the dictionary with the top level header (which was the only one recorded before)
and the user #include the lower level header first.
2016-11-18 01:29:09 +01:00
Philippe Canal
f4d9d9ccae
Pass Preproc and ASTContext instead of Sema to forward decl printer.
...
This will allow to lookup files during the printing
2016-11-18 01:29:09 +01:00
Roman Zulak
8a096ebfb4
Windows: Fix EOF not begin handled when reading from input.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-11-16 09:14:22 +01:00
Brian Bockelman
0cb447a445
Properly reset terminal state for various obscure signals.
2016-11-16 09:14:22 +01:00
Philippe Canal
9cd05070d7
Add missing override keywords
2016-11-16 09:14:22 +01:00
CristinaCristescu
0a895426d2
Code complete only input coming from tty as reported by Reader.
2016-11-16 09:14:22 +01:00
Axel Naumann
e43f5dbaa5
Allow "stealing" unfinished input. Enables resetting as a side-effect.
2016-11-16 09:14:22 +01:00
Bertrand Bellenot
7cffe5e49b
Typo
2016-11-16 09:14:22 +01:00
Vassil Vassilev
eb8957c092
Missing includes.
2016-11-16 09:14:22 +01:00
Boris Perovic
60660df4b7
Comments and refactorings (hidden -> masked) in the TextInput.
2016-11-16 09:14:22 +01:00
Bertrand Bellenot
515944b3ac
Use correct forward declaration (fix unresolved external symbol at link time)
2016-11-16 09:14:22 +01:00
Axel Naumann
b9a2361691
From martell: the proper spelling is _WIN32.
2016-11-16 09:14:22 +01:00
Axel Naumann
3468d790f1
Make tmp prune files process-unique (ROOT-6539).
2016-11-16 09:14:22 +01:00
Bertrand Bellenot
94a6f1fb8e
Small fix for text color in console
2016-11-16 09:14:21 +01:00
Axel Naumann
f67f118588
Removing temporary name.
2016-11-15 16:44:33 +01:00
Axel Naumann
2e7ac15af4
Add missing optimizer libs.
2016-11-15 16:44:32 +01:00
Axel Naumann
3ad4393932
Prepare for -O2 support & dynamic change of optimizer setting.
...
- Set the opt level on the (temporary) PassManagerBuilder.
- Reuse single FunctionPassManager.
- Pass XYZOptions in to construct optimizer passes lazily.
- Add all passes that clang::EmitAssemblyHelper::CreatePasses() adds.
2016-11-15 16:44:32 +01:00
Axel Naumann
bad1cbc2e0
Follow interface change.
2016-11-15 16:44:32 +01:00
Axel Naumann
2e4b59990d
Move BackendPasses to IncrementalExecutor.
...
They need the TargetMachine - and that's in the IncrementalExecutor.
2016-11-15 16:44:32 +01:00
Axel Naumann
690b7d6fac
Reorder includes from derived to base.
2016-11-15 16:44:32 +01:00
Axel Naumann
fc4ea6eade
Add missing include guards.
2016-11-15 16:44:32 +01:00
Philippe Canal
18cdccbc85
In AutoloadingVisitor, do not (ever) traverse definitions.
2016-11-14 03:14:37 +01:00
Philippe Canal
ce71bc9a5b
In AutoloadingVisitor, record and use the fact on whether we are traversing an autolading decl or not.
...
This affects whether we need to remove an inherit default or not (and vice et versa).
2016-11-14 03:14:37 +01:00
Philippe Canal
1b59773c18
In AutoloadingVisitor loop only from most recent decl to the autoloading decl.
...
I.e. only look at those that could have been affected directly by the content of the autoloading decl
2016-11-14 03:14:37 +01:00
Philippe Canal
7eb4413288
Revert 0547f09, i.e. re-extend default argument removal to more decls
2016-11-14 03:14:37 +01:00
Philippe Canal
b126607e4a
Consider a decl an autoloading decl only if the annotation is not inherited
2016-11-14 03:14:37 +01:00
Pere Mato
ac05814edc
Ensure that cling-compiledata.h is not taken from sources in preference
2016-11-11 10:29:42 +01:00
Axel Naumann
c9ad1f4a41
Only skipToEOF if needed.
2016-11-10 18:14:07 +01:00
Axel Naumann
87a972e570
Improve consistency for cling -x cuda.
2016-11-09 17:59:49 +01:00
Philippe Canal
a8bce0d416
Temporarily disable the default argument removal
2016-11-09 07:44:04 +01:00
Philippe Canal
8b1afa0e6b
In AutoloadingVisitor only unload enum decl that comes from the rootmap file
2016-11-08 22:59:56 +01:00
Philippe Canal
7c9379ac93
Refactor in RequireCompleteDeclContext the 'Update the DeclContext used for lookup to point to the definition.'
...
This superseeds 4fa2f7a38e37303b3bb5a9ba01d762122e8d9814, 2b4de2603a086162f89fd5eb16aa0d5fddac8a6e and 384f6eabcd2d02512b942215d7ae52ff40954027
2016-11-08 22:59:56 +01:00
Philippe Canal
bcf5b6f182
Remove traces of the default template argument in all the decl in the decl chains.
...
Fix part 1 of ROOT-8443
2016-11-08 20:14:31 +01:00
Axel Naumann
f5fe133410
Add clangParse needed by ParserStateRAII.
2016-11-08 08:44:16 +01:00
Axel Naumann
87585f78e0
Move -ldl to Utils, now that PlatformXYZ git moved.
2016-11-08 08:44:16 +01:00
Axel Naumann
58a6a94804
In the RAII ctor, set private Parser fields to default values.
2016-11-07 15:29:52 +01:00
Axel Naumann
3847e2560d
Split ParserStateRAII into Utils/. We need it in other places.
2016-11-07 15:29:52 +01:00
David Abdurachmanov
432c91f534
Set code model to Large for PowerPC64 (aka ppc64le)
...
This is needed because TOC and text sections can be more than 2GB
apart. LLVM SectionMemoryManager is not aware of the design limits of
ppc64le while allocating memory for JIT'ed sections. DSO limit was set
to 2GB by design. While running CMSSW ROOT/Cling puts TOC and .text.func
~2.7GB apart in VA space. Usually was triggered by TFormula in CMSSW.
IBM has modified global entry function prologue. TOC is now stored in
64-bit value before global entry to allow addressing beyond 2GB.
This was merged to Clang months ago, but is only applicable to large
code model.
Later IBM propagated this further:
- binutils patches are here:
https://sourceware.org/ml/binutils/2015-11/msg00232.html
https://sourceware.org/ml/binutils/2015-11/msg00233.html
and will be available with binutils 2.26
- GCC patch is here:
https://gcc.gnu.org/ml/gcc-patches/2015-12/msg00355.html
and will be available with GCC 6.0.
- LLVM patch is here:
http://lists.llvm.org/pipermail/llvm-commits/Week-of-Mon-20160111/324454.html
and will be available with LLVM 3.8.
- Kernel patches (module loader etc.) are here:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=a61674bdfc7c2bf909c4010699607b62b69b7bec
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=2e50c4bef77511b42cc226865d6bc568fa7f8769
and will be available with Linux 4.5.
Signed-off-by: David Abdurachmanov <David.Abdurachmanov@cern.ch>
2016-11-07 13:02:51 +01:00
Axel Naumann
3711cd0658
Unloaded Decls are now put back into CodeGen, no need to mark used.
2016-11-07 13:02:51 +01:00
Axel Naumann
4cec420bf1
Unloaded declarations are now put back into CodeGen; no need to mark them used.
2016-11-07 13:02:51 +01:00
Axel Naumann
6cdabe2aa1
Provide directory (and not dir+name) in _path, for $PATH comparison.
2016-11-01 18:23:45 +01:00
Axel Naumann
a3ed23c7ec
Revert "Missing realpath on compiler directory; should fix CMS."
...
This was a red herring.
This reverts commit b33080d18d605ef33013fabc59314729fd48d295.
2016-11-01 18:23:45 +01:00
Axel Naumann
4793a14f07
Missing realpath on compiler directory; should fix CMS.
...
(cherry picked from commit 812c8b6dab03b66b9b17d0c180f6da15a8810cd0)
2016-11-01 18:23:45 +01:00
Axel Naumann
64100180b6
Do not crash if no executor is alife.
2016-10-20 18:22:25 +02:00
Axel Naumann
8dcf1c8b46
Revert "Implement IsMemoryValid natively on OSX. 250% faster!"
...
This reverts commit 09d1e4d4b4246e3c738379188e1780522ba70ccf.
It is actually much much slower on MacOS 10.11 and 10.12.
2016-10-20 11:52:41 +02:00
Roman Zulak
74cb06a22f
Fixes issues where symbols can be improperly aligned for llvm::PointerIntPair Use std::pair instead of llvm::PointerIntPair.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-19 13:54:07 +02:00
Roman Zulak
3e765d8ac9
Add platform::POpen.
...
Fixes ClangInternalState::differentContent showing no differences when there
actually are, just less than 128 characters in length.
Invoking diff on Windows with --ignore-matching-lines arguments will fail because the command string is too long. Using Windows APIs to launch the process succeeds.
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
182954b87f
Windows: Match UCRT Version from build environment if possible.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
3acc9e577d
OSX: Use MAC_OS_X_VERSION_MAX_ALLOWED to infer SDK compiled with.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
508039082b
OSX: Actually choose highest SDK version and fallback to lexical sort.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
3d83bd70df
Cleanup utils::SplitPaths.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
4c97ee61c6
Log progress adding environmental library paths.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
37f86f9a4a
Add platform::kEnvDelim to avoid having #ifdefs for calls to SplitPaths.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:22 +02:00
Roman Zulak
f5633ed248
Use std::string for IncrementalJIT symbol lookup. Many callers already have a string, most functions called want them, and it's cheaper to construct an llvm::StringRef than a std::string when needed.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
8f44fe40c5
Remove unnecessary StringRefs and strlen calls to construct them.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
c3869d00cc
Windows: Fix looking up data symbols in process' libraries. Consolidate llvm::DynamicLibrary usage into IncrementalJIT.cpp. Add comments describing larger issue.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
2bc6a5c66b
Move windows::LookupSymbol to platform::DLSym
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
0cf6aec6a7
Lookup Windows functions in process.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
b2ab0a55e0
Make GetVisualStudioVersionCompiledWith private, and error out for untested versions.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
71eb51a1d2
Windows: Make CheckABICompatibility check a header dependent constant.
...
Previously the check was for a standard installation of VisualStudio.
That check will have likely passed already, but the user could have
forced the include paths making the prior check somewhat meaningless.
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
1dadbe2495
Refactor CheckABICompatibility into a more legible version. Standardize error message. Return whether the ABI matched or not.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00
Roman Zulak
6c2ab5c9d2
Reformat includes and remove Windows.h dependency.
...
Signed-off-by: Vassil Vassilev <vvasilev@cern.ch>
2016-10-18 17:53:21 +02:00