It seems the test is already broken, but look how awesome the
error message is now:
/home/chris/HIP/tests/hipify-clang/axpy.cu:31:12: error: expected string not found in input
// CHECK: hipLaunchKernel(HIP_KERNEL_NAME(axpy), dim3(1), dim3(kDataLen), 0, 0, a, device_x, device_y);
^
<stdin>:31:2: note: scanning from here
//
^
<stdin>:33:2: note: possible intended match here
hipLaunchKernelGGL(axpy, dim3(1), dim3(kDataLen), 0, 0, a, device_x, device_y);
^
[ROCm/clr commit: 74fd64d5c1]
Use of grep in `lit` RUN lines is deprecated:
https://llvm.org/docs/TestingGuide.html#writing-new-regression-tests
Using grep leads to really unhelpful failure output (it literally
just says "the test failed"). FileCheck is much more helpful, and
distributed with LLVM on most distros anyway, so this extra
dependency shouldn't prove problematic.
[ROCm/clr commit: 3868036ea7]
This just... isn't a target. Maybe you were trying to do a file
dependency? But that's handled implicitly by the find_program
call anyway, so all this is doing is generating a cmake warning
[ROCm/clr commit: e9d259699c]
SWDEV-2 - Change OpenCL version number from 2524 to 2525.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2272 edit
[ROCm/clr commit: 53a1d4d451]
SWDEV-102726 - [OCL-LC-ROCm] Open source OpenCL Runtime
- Initialize spirVersions_ even if we do not report the extension.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#72 edit
[ROCm/clr commit: 403b110f0c]
SWDEV-2 - Change OpenCL version number from 2523 to 2524.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2271 edit
[ROCm/clr commit: f7ceb625b4]
SWDEV-135933 - Use the same device driver version format for all device backends
- Report "####.# (HSA#.#,{HSAIL|LC})"
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#71 edit
[ROCm/clr commit: 3eb98fe4e7]
This bug was present all along, but something changed in the order
of de-initialisation performed by llvm that makes it actually
crash now.
The constructor of HipifyPPCallbacks gives:
```
std::unique_ptr<HipifyPPCallbacks>(this)
```
to the LLVM Preprocessor instance. The Preprocessor instance
subsequently frees the HipifyPPCallbacks, which is then freed
again when we leave the stack frame at line 4340.
So: let's leak the HipifyPPCallbacks onto the heap, and leave
the LLVM Preprocessor object responsible for tidying it up.
[ROCm/clr commit: 893ee6d6ca]
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.
[ROCm/clr commit: 22a5e2330d]
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.
[ROCm/clr commit: 73984ed809]
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...
[ROCm/clr commit: c876f6ffd5]
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
[ROCm/clr commit: c62766f880]
SWDEV-2 - Change OpenCL version number from 2522 to 2523.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2270 edit
[ROCm/clr commit: 04f538b5e6]
SWDEV-132888 - OCL kernel execution time is long at the first run on Linux, Vega, HSAIL (ProRender unit test)
Don't finalize ISA binaries if recompilation is not requested.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#74 edit
[ROCm/clr commit: d53d7be489]
SWDEV-2 - Change OpenCL version number from 2521 to 2522.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2269 edit
[ROCm/clr commit: ce8ed40695]
SWDEV-2 - Change OpenCL version number from 2520 to 2521.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2268 edit
[ROCm/clr commit: 0702d1b040]
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#208Fixes#206
[ROCm/clr commit: bd8a90a05b]
SWDEV-2 - Change OpenCL version number from 2519 to 2520.
Affected files ...
... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2267 edit
[ROCm/clr commit: a423364ee7]