提交線圖

6428 次程式碼提交

作者 SHA1 備註 日期
Chris Kitching 6718519025 Be agnostic to the new getReplacements() API
See comment
2017-10-19 17:08:55 +01:00
Chris Kitching 24fc459f69 Use inline initialisers to set default field values
A trivial cleanup that helps in a moment..
2017-10-19 17:08:55 +01:00
Chris Kitching 7ae6a10c99 Omit now-removed Filename string arg from handleBeginSource 2017-10-19 17:08:55 +01:00
Chris Kitching 7e253365f1 Cope with Replacements now having llvm::Error returns 2017-10-19 17:08:54 +01:00
Chris Kitching 575bedb28c Cope with clang 4.0's rename of getNumArgs()
Sorry, this one I couldn't do in a perfectly elegant way ;)
2017-10-19 17:08:54 +01:00
Chris Kitching 0953a7887d Remove unnecessary call to Retain() on a smart pointer
The Preprocessor smart pointer is held by the CompilerInstance,
and therefore its reference count cannot reach zero until the
CompilerInstance itself is destroyed.

If the CompilerInstance is destroyed, you have more to worry about
than just the preprocessor being deallocated!

Newer versions of the LLVM/Clang API migrated to using
std::shared_ptr, so there is no `Retain()` function (by that
name, anyway). Eliminating this redundant use is a neat and
backward-compatible way to become compatible with newer versions
of the LLVM/Clang API.
2017-10-19 17:08:54 +01:00
Chris Kitching 2975d00edc Refer to clang::StringLiteral explicitly
Newer versions of llvm/clang mean there is both an
llvm::StringLiteral and a clang::StringLiteral. Since we're
dumping both namespaces wholesale into the global namespace with
`using` declarations, this creates a name collision, which must be
resolved.

This change is backwards-compatible, and fixes a problem you
encounter when using newer versions of the llvm/clang API.
2017-10-19 17:08:54 +01:00
Chris Kitching 3a2fe40f78 Fix two faulty LLVM version checks
What we actually want to do here is use the StringRef version in
versions newer than 3.8, and the void one in 3.8 and older.

Checking "major-version >= 3 && minor-version >= 9" does not do
what we want. Consider what this will do for version 4.0, for
which minor-version is zero...
2017-10-19 17:08:54 +01:00
Chris Kitching be5a120f90 Use the cache for global variables - not PARENT_SCOPE hacks 2017-10-19 17:08:54 +01:00
Chris Kitching 9a3faec12c Skip lit tests if lit cannot be found 2017-10-19 17:08:54 +01:00
Chris Kitching 764d89dcbe Don't reinvent find_package
PythonInterp is a finder module that ships with cmake. It supports
the conventional interaction with find_package that allows you
to demand success, and particular vesions, without having your
own logic:

https://cmake.org/cmake/help/v3.0/command/find_package.html
2017-10-19 17:08:53 +01:00
Chris Kitching 757b9c3b76 Don't be picky about clang versions 2017-10-19 17:08:53 +01:00
Chris Kitching cb948dc7fd Declare HIPIFY_CLANG_TESTS as a cmake option 2017-10-19 17:08:53 +01:00
Chris Kitching 51ee1bdc2d Use early return to avoid indenting all of CMakeLists.txt 2017-10-19 17:08:53 +01:00
Chris Kitching 517d46c333 Fix broken indentation introduced by previous commit 2017-10-19 17:08:53 +01:00
Evgeny Mankov 76975f5928 Merge pull request #217 from ChrisKitching/cxx
[HIPIFY] Don't reject C++ > 11 language features
2017-10-19 17:38:18 +03:00
Chris Kitching 4ba2b2e5b8 Inline a redundant std::vector
Looks like a partial refactor..?
2017-10-19 14:11:25 +01:00
Chris Kitching 742526706b Allow user-provided -std=* argument to override the default
This means any user-provided -std=* argument overrides this one,
allowing use of newer standards.
2017-10-19 14:11:15 +01:00
Chris Kitching 1d205ab130 Add [[nodiscard]] attribute to hipError_t in C++17 mode
This will yield a compiler warning any time you discard an error
return value from an API call.
2017-10-19 13:34:02 +01:00
Siu Chi Chan ccef1cbd6e hipDeviceReset(): make sure to reinitialize the printf buffer in hcc RT 2017-10-18 16:26:13 -04:00
Evgeny Mankov db7661ccad Merge pull request #210 from ChrisKitching/output-hipify
[HIPIFY] Alter output file behaviour slightly
2017-10-18 21:46:31 +03:00
Chris Kitching 296c5a33ce Unconditionally append .hip as the default output filename 2017-10-18 19:19:18 +01:00
Jenkins 2a719cd240 Merge 'master' into 'amd-master'
Change-Id: I11589b3fff3bb58717f4f6d7045245815bbdf0cc
2017-10-18 04:11:00 -05:00
Evgeny Mankov e8de9dda33 Merge pull request #195 from emankov/master
[HIPIFY] CUDA RT Textures and Arrays support update
[HIPIFY] cmake changes
[HIPIFY][#199][Partial fix] Fix for cudaLaunchKernel transformation
2017-10-17 18:21:28 +03:00
Chris Kitching e4e17a56bb If an output path is given _use it_
Don't append .hip to a user-provided output file...
2017-10-16 17:32:57 +01:00
Chris Kitching 2263cb9f72 Operate on a temp file in-place
This copies to the output after operation, instead of working
_on_ the output. This allows includes to work correctly, while
supporting output paths anywhere on the filesystem.

Fixes #208
Fixes #206
2017-10-16 17:32:56 +01:00
Evgeny Mankov 7ee8e2d51b [HIPIFY][#199][Partial fix] Fix for cudaLaunchKernel transformation
[Synopsis]
If any of kernel arguments is a MACRO its location calculation is wrong (location of its definition is actually calculated).
Thus garbage code is being produced on the place of such a MACRO starting from the end of its actual definition.

[Solution]
Add isMacroBodyExpansion and isMacroArgExpansion checks on kernel arguments.
2017-10-12 20:05:42 +03:00
Evgeny Mankov 87cf949d39 [HIPIFY] cmake changes
+ standalone build support
+ WIN MSVC support
+ disable lit testing by default
+ to enable lit testing -DHIPIFY_CLANG_TESTS=1 should be specified

Tested builds:
+ hipify-clang standalone           {Ubuntu 16.04|Windows 10} {Debug|Release} {x86|x64a} {g++|clang++|MSVC 2017} {llvm 3.8.0|llvm 3.9.0} {-DHIPIFY_CLANG_TESTS=1| }
+ HIP {-DHIPIFY_CLANG_LLVM_DIR=..|} {Ubuntu 16.04}            {Debug|Release} {x86|x64a} {hcc}                   {llvm 3.8.0|llvm 3.9.0} {-DHIPIFY_CLANG_TESTS=1| }
2017-10-09 20:28:20 +03:00
Evgeny Mankov 557772e6ff Merge branch 'master' of https://github.com/ROCm-Developer-Tools/HIP 2017-10-09 20:17:43 +03:00
Alex Voicu 70786a5563 This fixes incorrect usage of the reader object, which created arcane
mismatches when one reader accessed another's section.
2017-10-09 15:46:38 +01:00
Alex Voicu 0545a49381 Merge remote-tracking branch 'origin/master' into feature_support_globals_for_module_api 2017-10-09 13:28:13 +01:00
Alex Voicu ffffe052b6 This adds cursory support for globals to the HIP module loading API. The
style is purposefully alien so as to signal that HIP experts should turn
it into HIP worthy code as soon as possible.
2017-10-09 13:27:11 +01:00
Ben Sander 8e04b33c95 Test cleanup. 2017-10-07 07:54:10 -07:00
Ben Sander 54d5b52d05 Add copy_coherency test
Test cache managemenent and synchronization between kernel and copy commands
in separate queues.
2017-10-07 07:54:10 -07:00
Jenkins 63a0f028be Merge 'master' into 'amd-master'
Change-Id: I473b92d17f663938831469c09f9cc65340ee30f6
2017-10-06 04:10:55 -05:00
Maneesh Gupta e6df9d480a Merge pull request #196 from mangupta/bump_hip_version
Bump HIP version to 1.4 and update release notes
2017-10-06 10:59:39 +05:30
Maneesh Gupta ca239ab6ef Bump HIP version to 1.4 and update release notes
Change-Id: I3570dedb32fe5fec6f60565c587a3282a4c6c709
2017-10-06 10:26:11 +05:30
Evgeny Mankov 53ce40ebab [HIPIFY] CUDA RT Textures and Arrays support update 2017-10-05 16:38:36 +03:00
Maneesh Gupta 9c7bd55dd7 Merge pull request #188 from gargrahul/texture2D_tests
Added Texture 2D object and reference APIs tests
2017-10-05 12:01:10 +05:30
Jenkins 4e0ac1eef9 Merge 'master' into 'amd-master'
Change-Id: I5af5b86d5786354ed8c9ddb9155f6a8b4f23e41b
2017-10-04 04:11:16 -05:00
Maneesh Gupta c1803c1951 Merge pull request #194 from bensander/fix_genco_math_path
Fix math ordering for --genco mode.
2017-10-03 16:17:34 +05:30
Maneesh Gupta fbde2e7137 Merge pull request #186 from gargrahul/fix_texture_nvcc
Fix texture support on HIP/NVCC path
2017-10-03 15:10:44 +05:30
Ben Sander 68c2146dc3 Fix math ordering for --genco mode. 2017-10-02 21:52:16 +00:00
Rahul Garg b8aae66424 Fixed review comment 2017-10-02 17:29:08 +05:30
Jenkins 759bee5f78 Merge 'master' into 'amd-master'
Change-Id: I15bbc627aa36c8886d0f03f4a2bfad8df2c5a0da
2017-10-02 04:11:34 -05:00
Rahul Garg 19d574d939 Fixed review comments 2017-10-02 10:57:25 +05:30
Rahul Garg f62254a8d8 Fixed build issue 2017-10-02 10:40:01 +05:30
Rahul Garg 470224cf25 Fix texture support on HIP/NVCC path 2017-10-02 10:40:01 +05:30
Kent Knox 4e825c6768 Merge pull request #193 from kknox/protect-docker-rmi
Make docker_clean_images more resilient

Merging this in now because it will make things run
2017-09-29 09:53:12 -05:00
Kent Knox fb561a3821 Making docker_clean_images more resilient
To the failure of deleting images.
2017-09-28 14:28:53 -05:00