76333 Commits

Author SHA1 Message Date
Ramesh Errabolu a4d753615b Changes to support surfacing of link weight as part of link info
Change-Id: I1c0705a9374af1245f0419c51beded0d7ee10639


[ROCm/ROCR-Runtime commit: dccbc9f2af]
2017-10-20 12:09:31 -04:00
Ben Sander 33b46b8ed9 Merge pull request #214 from scchan/reinit_printf_buffer
hipDeviceReset(): make sure to reinitialize the printf buffer in hcc RT

[ROCm/clr commit: 326651875d]
2017-10-20 11:04:37 -05:00
Ben Sander 326651875d Merge pull request #214 from scchan/reinit_printf_buffer
hipDeviceReset(): make sure to reinitialize the printf buffer in hcc RT
2017-10-20 11:04:37 -05:00
Ben Sander 584fb96850 Merge pull request #214 from scchan/reinit_printf_buffer
hipDeviceReset(): make sure to reinitialize the printf buffer in hcc RT

[ROCm/hip commit: 0e3d824e8d]
2017-10-20 11:04:37 -05:00
Ben Sander 0e3d824e8d Merge pull request #214 from scchan/reinit_printf_buffer
hipDeviceReset(): make sure to reinitialize the printf buffer in hcc RT
2017-10-20 11:04:37 -05:00
Ben Sander 2774542487 Update device properties.
- clear properties to defined initial state.
- enable some property flags which are now supported.


[ROCm/clr commit: ed85b15c3e]
2017-10-20 15:52:13 +00:00
Ben Sander ed85b15c3e Update device properties.
- clear properties to defined initial state.
- enable some property flags which are now supported.
2017-10-20 15:52:13 +00:00
Ben Sander e249e3c30e Update device properties.
- clear properties to defined initial state.
- enable some property flags which are now supported.


[ROCm/hip commit: acf89b43d4]
2017-10-20 15:52:13 +00:00
Ben Sander acf89b43d4 Update device properties.
- clear properties to defined initial state.
- enable some property flags which are now supported.
2017-10-20 15:52:13 +00:00
Ben Sander 339cf92137 Modify device properties to use pool API.
- Also better error code checking


[ROCm/clr commit: e738fa66b5]
2017-10-20 14:49:29 +00:00
Ben Sander e738fa66b5 Modify device properties to use pool API.
- Also better error code checking
2017-10-20 14:49:29 +00:00
Ben Sander 30872c6020 Modify device properties to use pool API.
- Also better error code checking


[ROCm/hip commit: c9f906c2ce]
2017-10-20 14:49:29 +00:00
Ben Sander c9f906c2ce Modify device properties to use pool API.
- Also better error code checking
2017-10-20 14:49:29 +00:00
Jenkins 4003f977ce Merge 'master' into 'amd-master'
Change-Id: Ibf1621678d63291b419c8c4193b35240ce3406fe


[ROCm/clr commit: 8077be49da]
2017-10-20 04:10:17 -05:00
Jenkins 8077be49da Merge 'master' into 'amd-master'
Change-Id: Ibf1621678d63291b419c8c4193b35240ce3406fe
2017-10-20 04:10:17 -05:00
Jenkins 0a1d17c123 Merge 'master' into 'amd-master'
Change-Id: Ibf1621678d63291b419c8c4193b35240ce3406fe


[ROCm/hip commit: 584c22d05f]
2017-10-20 04:10:17 -05:00
Jenkins 584c22d05f Merge 'master' into 'amd-master'
Change-Id: Ibf1621678d63291b419c8c4193b35240ce3406fe
2017-10-20 04:10:17 -05:00
foreman de2b6e9e30 P4 to Git Change 1472922 by johtaylo@johtaylo-jtincrementor2-increment on 2017/10/20 03:00:08
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]
2017-10-20 03:08:46 -04:00
foreman f7ceb625b4 P4 to Git Change 1472922 by johtaylo@johtaylo-jtincrementor2-increment on 2017/10/20 03:00:08
SWDEV-2 - Change OpenCL version number from 2523 to 2524.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2271 edit
2017-10-20 03:08:46 -04:00
foreman a72c17bc3d P4 to Git Change 1472623 by lmoriche@lmoriche_opencl_dev2 on 2017/10/19 13:12:12
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]
2017-10-19 13:19:58 -04:00
foreman 3eb98fe4e7 P4 to Git Change 1472623 by lmoriche@lmoriche_opencl_dev2 on 2017/10/19 13:12:12
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
2017-10-19 13:19:58 -04:00
Chris Kitching d0feaee4f4 Avoid a double-free of HipifyPPCallbacks instance
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]
2017-10-19 17:09:32 +01:00
Chris Kitching 893ee6d6ca Avoid a double-free of HipifyPPCallbacks instance
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.
2017-10-19 17:09:32 +01:00
Chris Kitching ecbe19828e Avoid a double-free of HipifyPPCallbacks instance
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/hip commit: f5b273fc4f]
2017-10-19 17:09:32 +01:00
Chris Kitching f5b273fc4f Avoid a double-free of HipifyPPCallbacks instance
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.
2017-10-19 17:09:32 +01:00
Chris Kitching 64a26027b7 Be agnostic to the new getReplacements() API
See comment


[ROCm/clr commit: a06fe54ee8]
2017-10-19 17:08:55 +01:00
Chris Kitching a06fe54ee8 Be agnostic to the new getReplacements() API
See comment
2017-10-19 17:08:55 +01:00
Chris Kitching dc869ef474 Be agnostic to the new getReplacements() API
See comment


[ROCm/hip commit: 6718519025]
2017-10-19 17:08:55 +01:00
Chris Kitching 6718519025 Be agnostic to the new getReplacements() API
See comment
2017-10-19 17:08:55 +01:00
Chris Kitching 5e09ca10b7 Use inline initialisers to set default field values
A trivial cleanup that helps in a moment..


[ROCm/clr commit: 9d83348ac7]
2017-10-19 17:08:55 +01:00
Chris Kitching 9d83348ac7 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 c08f105982 Use inline initialisers to set default field values
A trivial cleanup that helps in a moment..


[ROCm/hip commit: 24fc459f69]
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 fd9bc0d0d8 Omit now-removed Filename string arg from handleBeginSource
[ROCm/clr commit: abd34b2125]
2017-10-19 17:08:55 +01:00
Chris Kitching abd34b2125 Omit now-removed Filename string arg from handleBeginSource 2017-10-19 17:08:55 +01:00
Chris Kitching 2584387bfc Omit now-removed Filename string arg from handleBeginSource
[ROCm/hip commit: 7ae6a10c99]
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 a21737be39 Cope with Replacements now having llvm::Error returns
[ROCm/clr commit: 885573e1e2]
2017-10-19 17:08:54 +01:00
Chris Kitching 885573e1e2 Cope with Replacements now having llvm::Error returns 2017-10-19 17:08:54 +01:00
Chris Kitching b2ac8756fc Cope with Replacements now having llvm::Error returns
[ROCm/hip commit: 7e253365f1]
2017-10-19 17:08:54 +01:00
Chris Kitching 7e253365f1 Cope with Replacements now having llvm::Error returns 2017-10-19 17:08:54 +01:00
Chris Kitching db2b03b879 Cope with clang 4.0's rename of getNumArgs()
Sorry, this one I couldn't do in a perfectly elegant way ;)


[ROCm/clr commit: 9ccb966e2b]
2017-10-19 17:08:54 +01:00
Chris Kitching 9ccb966e2b 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 5e45fd1c7c Cope with clang 4.0's rename of getNumArgs()
Sorry, this one I couldn't do in a perfectly elegant way ;)


[ROCm/hip commit: 575bedb28c]
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 ae40d4bdea 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.


[ROCm/clr commit: 22a5e2330d]
2017-10-19 17:08:54 +01:00
Chris Kitching 22a5e2330d 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 459b78e997 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.


[ROCm/hip commit: 0953a7887d]
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 3f284c0927 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.


[ROCm/clr commit: 73984ed809]
2017-10-19 17:08:54 +01:00