Commit Graph

54851 Commits

Author SHA1 Message Date
foreman f42576b37c P4 to Git Change 1349651 by todli@todli-win-opencl-kv1 on 2016/12/05 18:05:57
SWDEV-107271 - [OpenCL][GFXIP9 Bring up] force Raven(gfx901) to use PAL backend

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudevice.cpp#561 edit
2016-12-05 18:14:43 -05:00
Maneesh Gupta 136d220c10 Revert "Enable USE_DISPATCH_HSA_KERNEL."
This reverts commit bbd9d98af7.


[ROCm/clr commit: ac93376c26]
2016-12-05 16:55:26 +05:30
Maneesh Gupta ac93376c26 Revert "Enable USE_DISPATCH_HSA_KERNEL."
This reverts commit f8bcbe8680.
2016-12-05 16:55:26 +05:30
Maneesh Gupta 46ffc69557 Revert "Enable USE_DISPATCH_HSA_KERNEL."
This reverts commit 097e4eb9d8.
2016-12-05 16:55:26 +05:30
foreman 331f6c23b3 P4 to Git Change 1349269 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/05 03:00:05
SWDEV-2 - Change OpenCL version number from 2295 to 2296.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2042 edit


[ROCm/clr commit: 897be96aed]
2016-12-05 03:09:52 -05:00
foreman 897be96aed P4 to Git Change 1349269 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/05 03:00:05
SWDEV-2 - Change OpenCL version number from 2295 to 2296.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2042 edit
2016-12-05 03:09:52 -05:00
Maneesh Gupta b01694f524 Don't share g_malloc_heap_size between libraries
Change-Id: Ic70bf83d4f865bc5c453941fdbc1814c77f0ad9d


[ROCm/clr commit: ac368cc60f]
2016-12-05 11:03:45 +05:30
Maneesh Gupta ac368cc60f Don't share g_malloc_heap_size between libraries
Change-Id: Ic70bf83d4f865bc5c453941fdbc1814c77f0ad9d
2016-12-05 11:03:45 +05:30
Maneesh Gupta 1cf9332c3f Don't share g_malloc_heap_size between libraries
Change-Id: Ic70bf83d4f865bc5c453941fdbc1814c77f0ad9d
2016-12-05 11:03:45 +05:30
foreman 11795e2131 P4 to Git Change 1349133 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/04 03:00:08
SWDEV-2 - Change OpenCL version number from 2294 to 2295.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2041 edit


[ROCm/clr commit: bcd923b89e]
2016-12-04 03:17:24 -05:00
foreman bcd923b89e P4 to Git Change 1349133 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/04 03:00:08
SWDEV-2 - Change OpenCL version number from 2294 to 2295.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2041 edit
2016-12-04 03:17:24 -05:00
Ben Sander bbd9d98af7 Enable USE_DISPATCH_HSA_KERNEL.
Optimize hipLaunchModule dispatch latency.


[ROCm/clr commit: f8bcbe8680]
2016-12-04 00:13:19 -06:00
Ben Sander f8bcbe8680 Enable USE_DISPATCH_HSA_KERNEL.
Optimize hipLaunchModule dispatch latency.
2016-12-04 00:13:19 -06:00
Ben Sander 097e4eb9d8 Enable USE_DISPATCH_HSA_KERNEL.
Optimize hipLaunchModule dispatch latency.
2016-12-04 00:13:19 -06:00
foreman 84995ed4a8 P4 to Git Change 1349078 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/03 03:00:06
SWDEV-2 - Change OpenCL version number from 2293 to 2294.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2040 edit


[ROCm/clr commit: ac1461ccc1]
2016-12-03 03:13:14 -05:00
foreman ac1461ccc1 P4 to Git Change 1349078 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/03 03:00:06
SWDEV-2 - Change OpenCL version number from 2293 to 2294.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2040 edit
2016-12-03 03:13:14 -05:00
Ben Sander bccb897f84 Add additional controls for forcing serialization and blocking.
Move HIP_COHERENT_HOST_ALLOC so it is read once at init time.
Add HIP_LAUNCH_BLOCKING_KERNELS, HIP_API_BLOCKING.
Update docs on debug and chicken bits.

Conflicts:
	src/hip_hcc.cpp


[ROCm/clr commit: 783ac156ce]
2016-12-02 18:03:59 -06:00
Ben Sander 783ac156ce Add additional controls for forcing serialization and blocking.
Move HIP_COHERENT_HOST_ALLOC so it is read once at init time.
Add HIP_LAUNCH_BLOCKING_KERNELS, HIP_API_BLOCKING.
Update docs on debug and chicken bits.

Conflicts:
	src/hip_hcc.cpp
2016-12-02 18:03:59 -06:00
Ben Sander ff2f54c1bf Add additional controls for forcing serialization and blocking.
Move HIP_COHERENT_HOST_ALLOC so it is read once at init time.
Add HIP_LAUNCH_BLOCKING_KERNELS, HIP_API_BLOCKING.
Update docs on debug and chicken bits.

Conflicts:
	src/hip_hcc.cpp
2016-12-02 18:03:59 -06:00
foreman 256c73c634 P4 to Git Change 1349031 by lmoriche@lmoriche_opencl_dev on 2016/12/02 18:33:20
SWDEV-107568 - [ROCm CQE][OCL][CZ] Basic 2.0 conformance test giving Segmentation fault (core dumped) at "progvar_prog_scope_uninit"
	- Detect if writable program scope variables are present in the program, and if so, insert barrier each dispatch of a kernel from this program.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.hpp#11 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#48 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.hpp#16 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#21 edit


[ROCm/clr commit: b705f74166]
2016-12-02 18:40:16 -05:00
foreman b705f74166 P4 to Git Change 1349031 by lmoriche@lmoriche_opencl_dev on 2016/12/02 18:33:20
SWDEV-107568 - [ROCm CQE][OCL][CZ] Basic 2.0 conformance test giving Segmentation fault (core dumped) at "progvar_prog_scope_uninit"
	- Detect if writable program scope variables are present in the program, and if so, insert barrier each dispatch of a kernel from this program.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rockernel.hpp#11 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#48 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.hpp#16 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocvirtual.cpp#21 edit
2016-12-02 18:40:16 -05:00
foreman 9e9f65bf95 P4 to Git Change 1348779 by nhaustov@spb-hlc-fiji1_opencl_rocm on 2016/12/02 06:23:08
SWDEV-102966 - Dump code object disassembly in OpenCL rocm device.

	Invoke DumpExecutableAsText from driver library.
	Update build to depend on some more LLVM libraries.

	LLVM changes are included, but will come through amd-common.
	Driver changes will come through ROCm-OpenCL-driver.

	Testing: Run some SDK samples/test_basic with AMD_OCL_BUILD_OPTIONS_APPEND=-save-temps

	Reviewed by: Laurent Morichetti, German Andryeyev.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#27 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#47 edit


[ROCm/clr commit: c7d2b188de]
2016-12-02 06:41:36 -05:00
foreman c7d2b188de P4 to Git Change 1348779 by nhaustov@spb-hlc-fiji1_opencl_rocm on 2016/12/02 06:23:08
SWDEV-102966 - Dump code object disassembly in OpenCL rocm device.

	Invoke DumpExecutableAsText from driver library.
	Update build to depend on some more LLVM libraries.

	LLVM changes are included, but will come through amd-common.
	Driver changes will come through ROCm-OpenCL-driver.

	Testing: Run some SDK samples/test_basic with AMD_OCL_BUILD_OPTIONS_APPEND=-save-temps

	Reviewed by: Laurent Morichetti, German Andryeyev.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#27 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#47 edit
2016-12-02 06:41:36 -05:00
foreman 51c41fe887 P4 to Git Change 1348697 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/02 03:00:05
SWDEV-2 - Change OpenCL version number from 2292 to 2293.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2039 edit


[ROCm/clr commit: 0fff20f59d]
2016-12-02 03:07:40 -05:00
foreman 0fff20f59d P4 to Git Change 1348697 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/02 03:00:05
SWDEV-2 - Change OpenCL version number from 2292 to 2293.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2039 edit
2016-12-02 03:07:40 -05:00
foreman de4285335b P4 to Git Change 1348476 by lmoriche@lmoriche_opencl_dev on 2016/12/01 21:48:08
SWDEV-79278 - [OpenCL][GFXIP9 Bring up] Add the Vega10 DeviceInfo entry and the gfx90X control functions.

Affected files ...

... //depot/stg/opencl/drivers/opencl/library/build/Makefile.library#59 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdefs.hpp#8 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#29 edit


[ROCm/clr commit: d4cbb3a801]
2016-12-01 21:55:50 -05:00
foreman d4cbb3a801 P4 to Git Change 1348476 by lmoriche@lmoriche_opencl_dev on 2016/12/01 21:48:08
SWDEV-79278 - [OpenCL][GFXIP9 Bring up] Add the Vega10 DeviceInfo entry and the gfx90X control functions.

Affected files ...

... //depot/stg/opencl/drivers/opencl/library/build/Makefile.library#59 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdefs.hpp#8 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocdevice.cpp#29 edit
2016-12-01 21:55:50 -05:00
foreman a659256035 P4 to Git Change 1348453 by skudchad@skudchad_test_win_opencl2 on 2016/12/01 19:09:47
SWDEV-107855 - [DVR][CF] Slave GPU exit BACO when DVR is turned on
	- Enable partial initiazation when querying devices for Win7.

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/11946/diff/

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#177 edit


[ROCm/clr commit: c1c625fc49]
2016-12-01 19:16:48 -05:00
foreman c1c625fc49 P4 to Git Change 1348453 by skudchad@skudchad_test_win_opencl2 on 2016/12/01 19:09:47
SWDEV-107855 - [DVR][CF] Slave GPU exit BACO when DVR is turned on
	- Enable partial initiazation when querying devices for Win7.

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/11946/diff/

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gslbe/src/rt/GSLDevice.cpp#177 edit
2016-12-01 19:16:48 -05:00
foreman 5b4f04ab51 P4 to Git Change 1348415 by gandryey@gera-w8 on 2016/12/01 17:11:27
SWDEV-98415 - [CQE OCL][OpenCL on PAL] Failures/Crash is observed with multiple modules of ocltst
	- Fix OCLImage2DFromBuffer test. Recalculate the original pitch if a view was created on the top of another ImageBuffer.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#19 edit


[ROCm/clr commit: 33de5b1e09]
2016-12-01 17:17:58 -05:00
foreman 33de5b1e09 P4 to Git Change 1348415 by gandryey@gera-w8 on 2016/12/01 17:11:27
SWDEV-98415 - [CQE OCL][OpenCL on PAL] Failures/Crash is observed with multiple modules of ocltst
	- Fix OCLImage2DFromBuffer test. Recalculate the original pitch if a view was created on the top of another ImageBuffer.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palresource.cpp#19 edit
2016-12-01 17:17:58 -05:00
foreman bcdf557d83 P4 to Git Change 1348378 by gandryey@gera-ocl-lc on 2016/12/01 16:16:14
SWDEV-98415 - [CQE OCL][OpenCL on PAL] Failures/Crash is observed with multiple modules of ocltst
	- Fix program compilation on LC path. Add program constructor for the real device.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.hpp#14 edit


[ROCm/clr commit: 0b136f4765]
2016-12-01 16:27:14 -05:00
foreman 0b136f4765 P4 to Git Change 1348378 by gandryey@gera-ocl-lc on 2016/12/01 16:16:14
SWDEV-98415 - [CQE OCL][OpenCL on PAL] Failures/Crash is observed with multiple modules of ocltst
	- Fix program compilation on LC path. Add program constructor for the real device.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.hpp#14 edit
2016-12-01 16:27:14 -05:00
foreman e47bcaf874 P4 to Git Change 1348313 by gandryey@gera-w8 on 2016/12/01 14:38:56
SWDEV-98415 - [CQE OCL][OpenCL on PAL] Failures/Crash is observed with multiple modules of ocltst
	- Fix a regression with oflline compilation. Mark null program.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#26 edit


[ROCm/clr commit: bf9217468e]
2016-12-01 14:54:04 -05:00
foreman bf9217468e P4 to Git Change 1348313 by gandryey@gera-w8 on 2016/12/01 14:38:56
SWDEV-98415 - [CQE OCL][OpenCL on PAL] Failures/Crash is observed with multiple modules of ocltst
	- Fix a regression with oflline compilation. Mark null program.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#26 edit
2016-12-01 14:54:04 -05:00
Maneesh Gupta 5e38114363 Improve shared and static library support
hipcc accepts new parameter -use-staticlib and -use-sharedlib to
control linking behavior. Default is still static library.

Change-Id: I28fb9a939f8177c75abefd8b77d8118a6666d1f4


[ROCm/clr commit: fd8b1c7d41]
2016-12-01 15:33:12 +05:30
Maneesh Gupta fd8b1c7d41 Improve shared and static library support
hipcc accepts new parameter -use-staticlib and -use-sharedlib to
control linking behavior. Default is still static library.

Change-Id: I28fb9a939f8177c75abefd8b77d8118a6666d1f4
2016-12-01 15:33:12 +05:30
Maneesh Gupta ef046c7098 Improve shared and static library support
hipcc accepts new parameter -use-staticlib and -use-sharedlib to
control linking behavior. Default is still static library.

Change-Id: I28fb9a939f8177c75abefd8b77d8118a6666d1f4
2016-12-01 15:33:12 +05:30
foreman e0b4d97f9c P4 to Git Change 1348037 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/01 03:00:03
SWDEV-2 - Change OpenCL version number from 2291 to 2292.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2038 edit


[ROCm/clr commit: e86db9a564]
2016-12-01 03:25:34 -05:00
foreman e86db9a564 P4 to Git Change 1348037 by johtaylo@johtaylo-jtincrementor-increment on 2016/12/01 03:00:03
SWDEV-2 - Change OpenCL version number from 2291 to 2292.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#2038 edit
2016-12-01 03:25:34 -05:00
Maneesh Gupta ce325da03f hipcc: HCC workaround no longer needs env var
Change-Id: I81f4eafddbda5e9e2f1082932dd502ab451cfc24


[ROCm/clr commit: f14198956f]
2016-12-01 12:51:58 +05:30
Maneesh Gupta f14198956f hipcc: HCC workaround no longer needs env var
Change-Id: I81f4eafddbda5e9e2f1082932dd502ab451cfc24
2016-12-01 12:51:58 +05:30
Maneesh Gupta df9faffe93 hipcc: HCC workaround no longer needs env var
Change-Id: I81f4eafddbda5e9e2f1082932dd502ab451cfc24
2016-12-01 12:51:58 +05:30
Maneesh Gupta 97d8017e80 Fix some broken directed tests
Change-Id: I40f2661a74951f8d91824df8fd9ef0cc2312d183


[ROCm/clr commit: 9cab8d4260]
2016-12-01 12:47:37 +05:30
Maneesh Gupta 9cab8d4260 Fix some broken directed tests
Change-Id: I40f2661a74951f8d91824df8fd9ef0cc2312d183
2016-12-01 12:47:37 +05:30
Maneesh Gupta 1e9dc5b521 Fix some broken directed tests
Change-Id: I40f2661a74951f8d91824df8fd9ef0cc2312d183
2016-12-01 12:47:37 +05:30
foreman 2ed6248f78 P4 to Git Change 1347718 by kzhuravl@kzhuravl-fiji-oclhsa on 2016/11/30 13:40:59
SWDEV-76911 - Bring loader in sync with git (integration of CL 1347664) + necessary updates for runtimes

	ReviewBoardURL: http://ocltc.amd.com/reviews/r/11425/
	Testing: Dev/SCDevUtil build, smoke, some opencl sc stg builds/tests, precheckin (http://ocltc:8111/viewModification.html?modId=79218&personal=true&init=1&tab=vcsModificationBuilds)

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/amdhsacod/amdhsacod.cpp#17 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/loader/executable.cpp#33 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/loader/executable.hpp#18 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/loader/loaders.hpp#12 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/amd_elf_image.hpp#9 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/amd_hsa_loader.hpp#15 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/hsa.h#5 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/hsa_ext_image.h#5 integrate
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#229 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#25 edit


[ROCm/clr commit: bc904d8335]
2016-11-30 13:47:21 -05:00
foreman bc904d8335 P4 to Git Change 1347718 by kzhuravl@kzhuravl-fiji-oclhsa on 2016/11/30 13:40:59
SWDEV-76911 - Bring loader in sync with git (integration of CL 1347664) + necessary updates for runtimes

	ReviewBoardURL: http://ocltc.amd.com/reviews/r/11425/
	Testing: Dev/SCDevUtil build, smoke, some opencl sc stg builds/tests, precheckin (http://ocltc:8111/viewModification.html?modId=79218&personal=true&init=1&tab=vcsModificationBuilds)

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/amdhsacod/amdhsacod.cpp#17 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/loader/executable.cpp#33 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/loader/executable.hpp#18 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/ext/loader/loaders.hpp#12 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/amd_elf_image.hpp#9 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/amd_hsa_loader.hpp#15 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/hsa.h#5 integrate
... //depot/stg/opencl/drivers/opencl/compiler/sc/HSAIL/include/hsa_ext_image.h#5 integrate
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#229 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#25 edit
2016-11-30 13:47:21 -05:00
foreman 2caf2b7833 P4 to Git Change 1347598 by atamazov@ata_h1 on 2016/11/30 06:48:06
SWDEV-79309 - [ROCm][OCLonLC][AMDGPU asm] OclElf: Correctly skip symbols which have special section indexes.

	[Issues]
	Kernels which contain absolute symbols can't be run. Error message looks like:
	"OclElf::getSymbolInfo() failed in gelf_getshdr() - Invalid argument."

	[Reason]
	Symbols which have special section indexes (e.g. absolute symbols)
	are incorrectly handled by the compiler library.

	[Solution]
	Correctly skip symbols which have special section indexes in the loader.
	Promote the fix into compiler/legacy-lib at once.

	[Remarks/Misc]
	Absolute symbols do not normally produced by OpenCL compiler,
	but may come from kernels written in assembly language.
	AMDGPU asm exports all symbols, even ABSOLUTE LOCAL HIDDEN INTERNAL etc.
	Impossibility to disable export of useless symbols is known issue of llvm-mc
	core, see https://llvm.org/bugs/show_bug.cgi?id=27201.
	Note that presence of useless symbols does not make ELF invalid.

	[Review] http://ocltc.amd.com/reviews/r/11921/
	Evgeny Mankov (OK)

	[Tests]
	Tested that issue with asm kernels has gone.
	PASS TeamCity - Pre-checkin for CL1347161 timestamped:2016-11-29 21:54:40 Rev:0063

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/loaders/elf/elf.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/elf/elf.cpp#36 edit


[ROCm/clr commit: 71f5fb7e8f]
2016-11-30 06:53:56 -05:00
foreman 71f5fb7e8f P4 to Git Change 1347598 by atamazov@ata_h1 on 2016/11/30 06:48:06
SWDEV-79309 - [ROCm][OCLonLC][AMDGPU asm] OclElf: Correctly skip symbols which have special section indexes.

	[Issues]
	Kernels which contain absolute symbols can't be run. Error message looks like:
	"OclElf::getSymbolInfo() failed in gelf_getshdr() - Invalid argument."

	[Reason]
	Symbols which have special section indexes (e.g. absolute symbols)
	are incorrectly handled by the compiler library.

	[Solution]
	Correctly skip symbols which have special section indexes in the loader.
	Promote the fix into compiler/legacy-lib at once.

	[Remarks/Misc]
	Absolute symbols do not normally produced by OpenCL compiler,
	but may come from kernels written in assembly language.
	AMDGPU asm exports all symbols, even ABSOLUTE LOCAL HIDDEN INTERNAL etc.
	Impossibility to disable export of useless symbols is known issue of llvm-mc
	core, see https://llvm.org/bugs/show_bug.cgi?id=27201.
	Note that presence of useless symbols does not make ELF invalid.

	[Review] http://ocltc.amd.com/reviews/r/11921/
	Evgeny Mankov (OK)

	[Tests]
	Tested that issue with asm kernels has gone.
	PASS TeamCity - Pre-checkin for CL1347161 timestamped:2016-11-29 21:54:40 Rev:0063

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/loaders/elf/elf.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/elf/elf.cpp#36 edit
2016-11-30 06:53:56 -05:00