cling/test
Axel Naumann 673a1d63a4 cling PR 233 (#2038)
Add llvm module pass to generate unique cuda module ctor/dtor names.

This llvm module pass address the follow problem. Every llvm module has a cuda ctor and dtor (if a cuda fatbinary exist), with at least a function call to register the fatbinary. The ctor/dtor can also include function calls to register global functions and variables at runtime, depending on user's code. The lazy compilation detects functions by the name. If the name (symbol) already exists it uses the existing translation. Otherwise it translates the function on first use (but it never translates twice). Without the module pass, Cling will always use the translation of the first module.

The testcase use the reflection of the gCling interpreter object. It takes two random modules and compare the symbols of the cuda module ctor and dtor.

Also add function, which change the symbol of the cuda module ctor and dtor to preprocessor compliant symbols.
2018-05-18 11:14:07 +02:00
..
Autoloading The test is expected to fail on cling standalone. 2018-03-11 17:14:05 +01:00
CodeGeneration cling PR 233 (#2038) 2018-05-18 11:14:07 +02:00
CodeUnloading Don't clang-format cling test script. 2017-08-24 18:59:04 +02:00
Driver add automatic load of libcudart.so at start of cling -xcuda 2018-03-23 18:29:07 +01:00
ErrorRecovery Update test to follow new output. 2018-04-17 13:59:31 +02:00
Extensions Windows: Fix various test failures. 2016-12-12 12:44:09 +01:00
Interfaces reduce arguments at start of cling -xcling 2018-03-23 18:29:07 +01:00
LibraryCall Add CLING_EXPORT macro. 2016-12-12 12:44:09 +01:00
Lookup Fix test to check the right thing. 2017-06-26 17:44:07 +02:00
MultipleInterpreters Add cling output streams to cling/Utils/Output.h 2016-12-19 13:59:11 +01:00
NullDeref Remove .rawInput from a variety of tests to test unwrapped function input. 2016-09-05 12:44:13 +02:00
Pragmas Adapt to new default opt level. 2017-11-07 19:44:33 +01:00
Prompt cling can now print lamda-dependent types! 2018-04-30 16:29:42 +02:00
Recursion Update to XCode 5.1; e.g. ignore type of std::string::c_str(). 2014-03-31 15:15:57 +02:00
SourceCall Remove .rawInput from a variety of tests to test unwrapped function input. 2016-09-05 12:44:13 +02:00
Utils Windows: Fix type printed for test/Utils/Transform.C 2017-06-21 08:29:10 +02:00
CMakeLists.txt Check if targets exist and then add a dependency on them. 2018-04-19 14:29:07 +02:00
lit.cfg add automatic load of libcudart.so at start of cling -xcuda 2018-03-23 18:29:07 +01:00
lit.site.cfg.in Update cling's testsuite to use the newest llvm lit. 2013-09-27 14:33:04 +02:00