Commit Graph

129 Commits

Author SHA1 Message Date
foreman 2300414425 P4 to Git Change 1281101 by smekhano@stas-rampitec-hsa on 2016/06/17 13:42:09
SWDEV-95698 - Complib: set data layout string from the subtarget in codegen
	This logic was broken since llvm 3.6 merge and datalayout was not set as supposed.
	This results in a different compilation results with complib and llc.
	In addition that leads to the suboptimal codegen.

	Testing: smoke, precheckin, llc_opt, ocl_features, vec_ldst, ocl_sdk_aoc2_compare_main
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#71 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/ocl/regression/95698/calcweight-nounroll-min.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_regression.tlst#37 edit
2016-06-17 13:49:36 -04:00
foreman 95bb95fdea P4 to Git Change 1273850 by smekhano@stas-rampitec-hsa on 2016/05/27 12:10:58
SWDEV-85602 - HSA HLC: remove gblobal variable HLC_Max_WG_Size and pass info as an option

	Testing: smoke, precheckin
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#147 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#94 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.cpp#117 edit
2016-05-27 12:25:43 -04:00
foreman 712c0c4009 P4 to Git Change 1273450 by smekhano@stas-rampitec-hsa on 2016/05/26 14:04:49
SWDEV-93545 - HSA HLC: target option interface between complib and BE and denorm control refactoring

	Global variables and associated options to control target GPU for optimizations and fp32 denorm support are removed.
	Instead standard llvm -mcpu=<cpu> is used to pass chip family name and fp32 denorm is turned into a subtarget feature.
	Subtarget feature can be set for llc as standard -mattr=+fp32-denormals and corresponding code to pass feature string
	to the BE is added to the compiler lib, mimicing what we used to have for AMDIL.

	Device name HSAIL metadata will now reflect an actual GPU family passed to the HSAIL BE instead of "generic".

	Denorm support can be switched on as a feature bit in the target mapping. It is on starting from VI. However, just
	switching this bit for a family will not produce denorm supporting code. The option -cl-denorms-are-zero can be used
	to override this and runtime passes it for configs where CL_FP_DENORM is not reported.

	Currently CL_FP_DENORM is not reported for any device, however it can be changed with AMD_GPU_FORCE_SINGLE_FP_DENORM
	environment variable. If set it will be honored only starting from VI as set in the target mapping.

	Implemented isFMAFasterThanFMulAndFAdd to handle use of v_fma_f32 on GFX9 instead of a direct chip family check.

	Testing: smoke, precheckin
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#70 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#146 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/opt_level.cpp#30 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#18 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#27 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings.h#42 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings_hsail.h#32 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings_hsail64.h#27 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/BRIGAsmPrinter.cpp#155 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/BRIGAsmPrinter.h#69 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAIL.td#11 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelDAGToDAG.cpp#71 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.cpp#116 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.h#29 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstrInfo.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstrInfo.h#18 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstructions.td#22 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#55 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILSubtarget.cpp#14 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILSubtarget.h#15 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILTargetMachine.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/bin/test_driver.pl#29 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/llc_opt.tlst#97 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_features.tlst#58 edit
2016-05-26 14:22:33 -04:00
foreman 1161118bc3 P4 to Git Change 1273413 by smekhano@stas-nova-hsa on 2016/05/26 12:52:54
SWDEV-85602 - HSA HLC: serialize linking
	Since we do not have build referenced symbol map now during linking we do not have to keep all library modules
	in memory during the whole link process. This change serializes linking to save some memory.

	Testing: smoke, precheckin
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#145 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/include/AMDResolveLinker.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/lib/AMDResolveLinker.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/tools/opencl-link/opencl-link.cpp#7 edit
2016-05-26 13:01:51 -04:00
foreman a10cfef5e7 P4 to Git Change 1272070 by smekhano@stas-nova-hsa on 2016/05/23 14:39:45
SWDEV-85602 - switch to use of linkonce_odr for library and obsolete linkWithModule patches

	The linkonce_odr linkage is set to any non-local functions in the library during library build.

	Libraries are linked left to right and never back resolved. For that reason clp on the fly library
	is moved to the end of the library list. Otherwise by the time clp would like to use the scalar version
	of a builtin function for vector expansion this scalar function will not be available anymore.

	With the linkonce_odr linkage the linker includes any referenced function from a linked in module.
	That is true even for unused declarations. Therefor after every module my new code drops all unused
	declarations from the composite. If we do not do it a wrapper library such as builtins-hsail would
	reference all symbols from the wrapping library such as ocml and the wrapping library would be linked in
	almost as a whole. Dropping unused declarations solves it.

	Testing: smoke, pecheckin, conformance 2.0 with and w/o optimization
	Reviewed by Nikolay Haustov, Daniil Fukalov and Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#144 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.hpp#17 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/include/AMDResolveLinker.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/lib/AMDResolveLinker.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/tools/opencl-link/opencl-link.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Linker/Linker.h#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Linker/LinkModules.cpp#51 edit
... //depot/stg/opencl/drivers/opencl/library/x86/common/src/amdrt/build/Makefile.amdrt#24 edit
... //depot/stg/opencl/drivers/opencl/opencldefs#169 edit
2016-05-23 14:45:13 -04:00
foreman 5901528bb0 P4 to Git Change 1271561 by smekhano@stas-rampitec-hsa on 2016/05/20 13:15:00
SWDEV-85602 - Complib: switch off some legacy code
	Testing: smoke, precheckin
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#143 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.hpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/include/AMDResolveLinker.h#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/lib/AMDResolveLinker.cpp#3 edit
2016-05-20 13:32:27 -04:00
foreman 4de15fc86f P4 to Git Change 1266028 by smekhano@stas-rampitec-hsa on 2016/05/06 13:22:26
SWDEV-93545 - HSA HLC: produce v_fma_f32 instead of v_mad_f32/v_mac_f32 on GFX9 if denorms are supported

	1. Added means to know HW target for HSAIL BE.
	2. Simplified compiler lib logic in handling target capabilities.
	3. Used target info to fuse mul/add into fma_f32 on GFX9.
	Previously it was disabled because mad/mac always flush. v_fma_f32 does not flush,
	but only fast starting with GFX9.

	Testing: smoke, precheckin
	Reviewed by Nikolay Haustov and Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#69 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#142 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#17 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#26 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAIL.h#42 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILFusion.td#29 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelDAGToDAG.cpp#70 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.cpp#115 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstructions.td#21 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILTargetMachine.cpp#56 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/llc_opt.tlst#95 edit
2016-05-06 13:39:37 -04:00
foreman efa52f77ef P4 to Git Change 1264269 by smekhano@stas-nova-hsa on 2016/05/02 16:32:25
SWDEV-77584 - HSA HLC: refactoring of min/max processing and folding

	1. Fixed correctness bug: if a source contains code like (x > y) ? x : y, HLC was folding
	this and similar patterns to min and max instructions. The problem is with NaN handling.
	Such a pattern may return NaN if one of two arguments is a NaN. All our instructions return
	a number in this case, except for gcn instruction returning a qNaN if input is sNaN.
	For a qNaN a number is retuned in any way. Therefor such folding is only correct if NaN handling
	is disabled. Patterns are predicated to work with -cl-finite-math-only or -cl-fast-relaxed-math
	which includes the former option.

	NB: Performance regressions are expected in programs which do not use either of these options.

	2. Compiler lib did hot handle -cl-finite-math-only. Also added handling of -cl-no-signed-zeros,
	even though it does not affect code generation because there is no llvm counterpart for it.

	3. Patterns for NaN agnostic comparison codes are added. We are getting these in case if finite
	only math is requested.

	4. Removed patterns for __hsail_min_f* and __hsail_max_f*. Instead these intrinsics are lowered
	to fminnum and fmaxnum llvm operations with the same semantics. This allows to decrease the number
	of patterns and simplify handling.

	5. For f32 we were only producing gcn versions min and max with source patterns if gcn is enabled.
	Added similar lowering to standard min/max HSAIL operations if gcn is disabled.

	6. Added lowering of fmaxnum/fminnum to more efficient gcn operations if gcn is enabled.
	Neither OpenCL nor LLVM IR semantics are violated by this.

	7. Moved GCN media intrinsics definitions into the GCN directory.

	8. Added folding of gcn f32 instructions min(max), min(min), max(max) into corresponding gcn
	instructions med3, min3 and max3. This should have been helpful for color clamping.
	Performance testing showed these are slow, however. T-Rex test from compubench has slowed down
	by 50 times for no obvious reason. Therefor folding is disabled by default. The option -enable-gcn-mm3
	is added to enable the folding for testing purposes.

	Testing: smoke, precheckin, luxmark, compubench, BasemarkCL,
	conformance: commonfns, bruteforce -w, relationals, select
	Reviewed by Brian Sumner

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#68 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/opt_level.cpp#29 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/options.cpp#35 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/GCN/HSAILArithmetic.td#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/GCN/HSAILFusion.td#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/GCN/HSAILIntrinsics.td#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILArithmetic.td#45 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILFusion.td#28 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelDAGToDAG.cpp#68 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.cpp#113 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstrInfo.td#21 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILIntrinsics.td#70 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/llc/opt/minmax/minmaxf3pat.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/llc_opt.tlst#93 edit
2016-05-02 16:43:00 -04:00
foreman 89f38b0f7e P4 to Git Change 1263609 by emankov@em-hsa-amd on 2016/04/29 10:45:48
SWDEV-79309 - Back out changelist 1252154 due to AMDIL regression SWDEV-93034

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/include/v0_8/aclStructs.h#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/include/v0_8/aclTypes.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#93 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#67 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#24 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclTypes.h#9 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#25 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#50 edit
2016-04-29 11:00:59 -04:00
foreman 45ec615e49 P4 to Git Change 1259658 by bsumner@bsumner-lin-opencl on 2016/04/19 13:49:51
SWDEV-92314 - add means for library to query for GFX8+ chip

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/compiler_stage.hpp#13 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#141 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/include/AMDResolveLinker.h#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/lib/AMDResolveLinker.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/linker/tools/opencl-link/opencl-link.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/AMDLLVMContextHook.h#30 edit
2016-04-19 13:57:39 -04:00
foreman 511c6a5de8 P4 to Git Change 1252154 by emankov@em-hsa-amd on 2016/03/29 07:23:56
SWDEV-79309 - Compiler Lib memory consumption decreasing by aclQueryInfo refactoring.

	[Problem] Memcpy on every aclQueryInfo for metadata. As a result an unreasonable memory consumption on every compiled binary (on Runtime).

	[Solution] Once extracted kernel Metadata is cached, secondary extraction doesn't happen. Blits are also affected.

	[Testing] precheckin
	http://ocltc.amd.com:8111/viewModification.html?modId=69016&personal=true&buildTypeId=&tab=vcsModificationBuilds&show_all_builds=true

	[Reviewers] Stanislav Mekhanoshin, Nikolay Haustov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/include/v0_8/aclStructs.h#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/include/v0_8/aclTypes.h#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#41 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#92 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#66 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#23 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclTypes.h#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#15 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#24 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#49 edit
2016-03-29 07:35:41 -04:00
foreman 80cdbed438 P4 to Git Change 1249103 by smekhano@stas-rampitec-hsa on 2016/03/19 00:35:23
SWDEV-77584 - HSA HLC: constant fold get_local_size() with reqd_work_group_size attribute

	Testing: smoke, precheckin, conformance non_uniform_work_group
	Reviewed by Valery Pykhtin

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/optimizer.cpp#28 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/AMDUtils.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Transforms/AMDIntrinsic.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Transforms/AMDMetadataUtils.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Transforms/Utils/AMDLibCalls.h#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#53 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IntrinsicUtils/AMDIntrinsic.src_cpp#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/SPIR/AMDMetadataUtils.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/Utils/AMDLibCalls.cpp#61 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/Utils/AMDUtils.cpp#9 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/ocl/features/metadata/local_size_reqd.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/ocl/features/metadata/local_size_reqd_intr.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/llc_opt.tlst#87 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_features.tlst#53 edit
2016-03-19 00:43:22 -04:00
foreman 0967db2af7 P4 to Git Change 1247541 by smekhano@stas-rampitec-hsa on 2016/03/15 13:32:04
SWDEV-77584 - fixed work of option -cl-uniform-work-group-size to produce requirenopartialworkgroups in hsail

	Testing: smoke, precheckin
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#67 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#52 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_features.tlst#52 edit
2016-03-15 13:46:39 -04:00
foreman 521545cbae P4 to Git Change 1244419 by asalmanp@asalmanp-opencl-stg on 2016/03/07 11:25:05
SWDEV-79278 - [OpenCL][Vega10 Bring up] renaming Greenland device name to Vega10 (this is the official device name)

	ReviewBoardURL = http://ocltc.amd.com/reviews/r/9924/

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings.h#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings_amdil.h#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings_amdil64.h#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings_hsail.h#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings_hsail64.h#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#139 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings.h#40 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings_amdil.h#35 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings_amdil64.h#31 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings_hsail.h#30 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings_hsail64.h#25 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/driver/driver.cpp#60 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpudefs.hpp#134 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/runtime/OCLDeviceQueries.cpp#34 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/runtime/OCLPerfCounters.cpp#25 edit
2016-03-07 11:33:56 -05:00
foreman bf90d5a11c P4 to Git Change 1241713 by ashi1@ashi1_win50 on 2016/02/29 10:56:25
SWDEV-88670 - Required for upcoming sync of SPIRV translator

	SPIRV.h removed the include from header file, but it is needed.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#28 edit
2016-02-29 11:02:36 -05:00
foreman abb2291941 P4 to Git Change 1240661 by smekhano@stas-nova-hsa on 2016/02/25 13:30:49
SWDEV-85940 - Complib: fix memory leak in aclCompileInternal() CodeGenInit
	Testing: smoke, precheckin, test_compiler
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#91 edit
2016-02-25 13:45:17 -05:00
foreman bf45e6549f P4 to Git Change 1234219 by smekhano@stas-rampitec-hsa on 2016/02/03 22:29:28
SWDEV-86849 - HSA HLC: add AssertZExt to get_local_id/get_local_size calls if workrgoup size is know to fit i8 or i16
	Testing: smoke, precheckin
	Reviewed by Valery Pykhtin

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#138 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.cpp#110 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.h#27 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/llc/opt/mul24/local_size.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/llc_opt.tlst#80 edit
2016-02-03 22:33:51 -05:00
foreman 6dc767146f P4 to Git Change 1232961 by emankov@em-hsa-amd on 2016/02/01 04:39:58
SWDEV-79309 - OpenCL Compiler Library improvements.

	Minor Legacy Code Cleanup for OpenCL kernel caching feature implementation.

	Testing: precheck-in
	http://ocltc.amd.com:8111/viewModification.html?modId=66106&personal=true&buildTypeId=&tab=vcsModificationBuilds&show_all_builds=true

	Reviewer: Stanislav Mekhanoshin

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#90 edit
2016-02-01 04:47:26 -05:00
foreman 14179df14f P4 to Git Change 1228972 by smekhano@stas-nova-hsa on 2016/01/19 14:21:26
SWDEV-85602 - rename hsail-64 arch to hsail64
	This is to match other existing llvm targets, such as spir64 and amdil64, as well as to match behavior of open source HSAIL BE.
	For legacy users there is alias "-hsail-64" provided in the aoc2 only.

	Testing: smoke, precheckin
	Reviewed by Matthew Arsenault, Evgeny Mankov and Nikolay Haustov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/codegen.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/frontend.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/utils/v0_8/target_mappings.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#66 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend.cpp#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/target_mappings.h#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILTargetMachine.cpp#53 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/TargetInfo/HSAILTargetInfo.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/aacl/aa.h#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/aoc2/aoc2.cpp#80 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/amp_libm/build/Makefile.amp_libm#4 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/gcn/build/Makefile.gcn#20 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/gcndev/build/Makefile.gcndev#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/build/Makefile.hsail#44 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpucompiler.cpp#153 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#222 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/hsa_foundation/hsacompiler.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/bin/test_driver.pl#25 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/complib.tlst#21 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_debug.tlst#9 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/ocl_regression.tlst#25 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/spir/SPIRBase.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/spir/SPIRVBasic.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/spir/SPIRVDropIn.cpp#5 edit
2016-01-19 14:31:59 -05:00
foreman 0eb4127eaf P4 to Git Change 1225189 by yaxunl@yaxunl_stg_win50 on 2016/01/06 10:45:41
SWDEV-84848 - Add timing for drop-in SPIRV translation. Fix timing for loading libraries.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#137 edit
2016-01-06 10:55:08 -05:00
foreman 13f385908c P4 to Git Change 1222955 by smekhano@stas-rampitec-hsa on 2015/12/22 13:06:59
SWDEV-80173 - remove the opt level adjustment based on the function size
	Since it only limits the llvm backend, but not optimizer or SC it really hurts the compile time.
	A huge unoptimized hsail after inlining and no backend optimizations goes to the SC with overwhelming results.
	A proper way of addressing these issues is to keep inlining reasonable.

	Testing: smoke, precheckin
	Reviewed by Evgeny Mankov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/codegen.cpp#65 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IPO/AMDInline.cpp#3 edit
2015-12-22 13:15:33 -05:00
foreman fd39fdc694 P4 to Git Change 1221604 by yaxunl@yaxunl_stg_win50 on 2015/12/16 17:19:59
SWDEV-84089 - [SPIRV] github pull request #32 Changes for Clang integration.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#27 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#136 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#89 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Support/SPIRV.h#10 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/CMakeLists.txt#16 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVWriter.cpp#16 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVWriterPass.cpp#1 branch
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVWriterPass.h#1 branch
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/build/Makefile.SPIRV#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVBasicBlock.cpp#2 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVBasicBlock.h#2 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDebug.h#3 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDecorate.cpp#2 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDecorate.h#6 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVEntry.cpp#5 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVEntry.h#7 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVFunction.cpp#3 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVFunction.h#3 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVInstruction.h#8 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVModule.cpp#13 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVModule.h#7 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVStream.cpp#5 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVStream.h#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVUtil.h#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVValue.h#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/llvm-spirv/llvm-spirv.cpp#10 integrate
2015-12-16 17:27:20 -05:00
foreman 4df676dc36 P4 to Git Change 1221023 by yaxunl@yaxunl_stg_win50 on 2015/12/15 12:50:27
SWDEV-83705 - [SPIRV] Refactor aclUpdateRawFile as a static function called by SPIRVToModule.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#39 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#88 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/acl.h#12 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#216 edit
2015-12-15 13:07:52 -05:00
foreman f5acde74f7 P4 to Git Change 1220218 by yaxunl@yaxunl_stg_win50 on 2015/12/11 16:35:30
SWDEV-83705 - [SPIRV] Fix failure in SPIR-V conformance test compile_and_link.

	e_rawfile of elf needs to be updated after LLVM section is inserted into the elf containing SPIR-V.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#38 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#87 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/acl.h#11 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/bif/bifbase.cpp#54 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/bif/bifbase.hpp#24 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#13 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#23 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#215 edit
2015-12-11 16:46:21 -05:00
foreman 5e3d4f5a01 P4 to Git Change 1214781 by smekhano@stas-rampitec-hsa on 2015/11/25 14:45:09
SWDEV-82596 - HSA HLC: Create AMDInline pass
	The generic llvm inlining heuristcs do not work well for GPU.
	In particular we have a common problem in several tests:
	If we have a pointer to private array passed into a function it will not be optimized out, leaving scratch usage.
	The pass increases the inline threshold to allow inliniting in this case.

	Also that we can move at least some AMD inlining customizations into this file from the common code.
	Inline hint threshold is moved in this change.

	Performance impact on ocltst sha256, 32 bit, Fiji:

				AMDIL	HSAIL	Diff		HSAIL+Inliner	Diff		Diff
					before	to AMDIL			to HSAIL	to AMDIL
	OCLPerfSHA256[  0]	43.843	40.894	0.93		69.910		1.71		1.59
	OCLPerfSHA256[  1]	53.611	51.083	0.95		80.919		1.58		1.51
	OCLPerfSHA256[  2]	52.127	51.528	0.99		80.640		1.56		1.55
	OCLPerfSHA256[  3]	60.952	57.027	0.94		68.615		1.20		1.13
	OCLPerfSHA256[  4]	76.173	70.150	0.92		80.582		1.15		1.06
	OCLPerfSHA256[  5]	75.886	70.264	0.93		81.000		1.15		1.07

	Testing: smoke, precheckin, ocltst sha256
	Reviewed by Danill Fukalov

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/opt_level.cpp#28 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/InitializePasses.h#93 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/LinkAllPasses.h#49 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Transforms/IPO.h#32 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IPO/AMDInline.cpp#1 add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IPO/CMakeLists.txt#24 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IPO/IPO.cpp#32 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IPO/Inliner.cpp#42 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/opt/amdopt.inc#28 edit
2015-11-25 15:23:51 -05:00
foreman ccc2b4ce79 P4 to Git Change 1213734 by yaxunl@yaxunl_stg_win50 on 2015/11/23 11:02:59
SWDEV-82054 - [CQE OCL][QR][LNX] RQ Conformance "Integer_Ops" test is crashing on CPU; Faulty CL#1206023.

	In llvm32 by default llvm::DisablePrettyStackTrace is off, which causes a trap handler installed by default and interferes with the trap handler in runtime, causing unhandled SIGFPE exceptions when executing conformance/integer_ops on certain cpu.

	To fix this, put stack trace duping under an env var AMD_DUMP_STACK_TRACE and set llvm::DisablePrettyStackTrace=true by default.

	Here env var is used because there is still no elf binary at this stage to pass the compiler option to if_aclCompilerInit.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/v0_8/if_acl.cpp#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#86 edit
2015-11-23 11:13:25 -05:00
foreman 56ea6c56a1 P4 to Git Change 1210699 by yaxunl@yaxunl_stg_win50 on 2015/11/12 15:57:00
SWDEV-81805 - Fix compiler lib bug: incorrect type name %opencl.pipe_t0 is generated when using clang.

	Clang does not return llvm::Module. It saves the bitcode to a memory buffer and passed back to compiler lib, then bitcode reader is used to get llvm::Module. Clang and bitcode reader uses the same LLVMContext which is created earlier in aclCompileInternal. Since named struct types are shared between modules in LLVMContext. When bitcode reader loads the module, name collision happens for named struct types, which causes them to be postfixed with a number, e.g. %opencl.pipe_t => %opencl.pipe_t0.

	This causes failure in SPIR-V drop-in conformance test.

	The fix is to let clang uses a separate LLVMContext.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#26 edit
2015-11-12 16:28:06 -05:00
foreman 45746f1d16 P4 to Git Change 1209623 by yaxunl@yaxunl_stg_win50 on 2015/11/10 15:33:51
SWDEV-67990 - SPIR-V: Fix duplicate creation of opaque types in SPIR-V/LLVM translation.
	Fix mem leak in drop-in LLVM/SPIR-V translator.
	Add warning for undefined function in linker.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#135 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVReader.cpp#5 edit
2015-11-10 15:57:43 -05:00
foreman a8cd480328 P4 to Git Change 1208996 by bsumner@bsumner-lin-opencl on 2015/11/09 14:14:50
SWDEV-10637 - clean up half_math and merge CI lib into main lib

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/library.cpp#19 edit
... //depot/stg/opencl/drivers/opencl/library/build/Makefile.library#46 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/Makefile#4 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/Makefile#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/build/Makefile#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/build/Makefile.hsail-amd-ci#18 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_argred.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_cosF.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_expF.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_logF.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_rsqrtF.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_sinF.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_sincos.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail-amd-ci/src/math32/half_sqrtF.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/argredhalfF.cl#1 add
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_cosF.cl#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_divideF.cl#4 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_exp10F.cl#1 add
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_exp2F.cl#1 add
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_expF.cl#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_log10F.cl#1 add
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_log2F.cl#1 add
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_logF.cl#4 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_powrF.cl#2 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_recipF.cl#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_rsqrtF.cl#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_sinF.cl#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_sincos.cl#2 delete
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_sqrtF.cl#3 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/half_tanF.cl#2 edit
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/sincoshalfF.cl#1 add
... //depot/stg/opencl/drivers/opencl/library/hsa/hsail/src/math32/tanredF.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/bin/hsa_dist.pl#3 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/bin/test_driver.pl#21 edit
2015-11-09 14:24:12 -05:00
foreman a0535772b5 P4 to Git Change 1208253 by nhaustov@nhaustov_hsa on 2015/11/06 03:24:59
SWDEV-79309 - Clean up HSAIL backend and compiler library includes.

	Use libHSAIL headers directly, not via libHSAIL/ subdir.
	Also remove no longer present libBRIGDwarf subdir usage.

	Testing: pre-checkin

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/build/Makefile.common#36 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#85 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/build/Makefile.gpu#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#59 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.hpp#19 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/BRIGAsmPrinter.cpp#145 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/BRIGAsmPrinter.h#63 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/CMakeLists.txt#20 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILGlobalScopeInitializer.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILIPUniformAnalysis.h#12 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelDAGToDAG.cpp#56 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILISelLowering.cpp#101 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstrInfo.cpp#36 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILInstrInfo.h#15 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#44 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.h#12 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILOptimizeMemoryOps.cpp#33 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILUtilityFunctions.cpp#51 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILUtilityFunctions.h#41 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/LibHSAILAdapters.h#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/build/Makefile.hsail#18 edit
2015-11-06 03:35:34 -05:00
foreman e64abec9e1 P4 to Git Change 1207842 by emankov@em-hsa-amd on 2015/11/05 06:14:29
SWDEV-77584 - Compiler Lib: Preparations for enabling HSAIL on OpenCL 1.2 by default. Remove CL1.2 check on HSAIL path.

	AMDIL on CL1.2 is still by default.

	[Reason] HSAIL path works on CL1.2, all known issues are fixed. There is no any harm if someone will try to force HSAIL on CL 1.2 offline.

	[Testing] pre check-in
	http://ocltc.amd.com:8111/viewModification.html?modId=61694&personal=true&buildTypeId=&tab=vcsModificationBuilds&show_all_builds=true

	[Reviewers] Stanislav Mekhanoshin, Nikolay Haustov
	http://ocltc.amd.com/reviews/r/8850

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#84 edit
2015-11-05 06:23:59 -05:00
foreman f1b41d1cca P4 to Git Change 1206023 by yaxunl@yaxunl_stg_win50 on 2015/10/30 14:17:53
SWDEV-80261 - Enable dump stack trace in debug build when assert/abort/segfault to facilitate debugging.

	It is useful to see the stack trace when program assert(), especially in teamcity when some issues are not reproducible locally. This change enables that.

	Only enabled for debug build.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/v0_8/if_acl.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#83 edit
2015-10-30 14:28:24 -04:00
foreman 99906c0e05 P4 to Git Change 1204812 by nhaustov@nhaustov_hsa on 2015/10/28 09:08:46
SWDEV-79309 - Remove dependency on scwrapper.

	Testing: smoke, pre-checkin

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#36 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#82 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#57 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.cpp#12 edit
2015-10-28 09:18:54 -04:00
foreman d75d0654d4 P4 to Git Change 1204512 by ashi1@ashi1_win50 on 2015/10/27 17:04:33
SWDEV-79695 -  Checkin again after fixed build issue with ocltst changes. Merged all changes in compiler lib to legacy-lib.

	HSAIL Metadata Workgroup Size Hint and Vec Type Hint added to HSAIL
	HSAIL does not handle kernel attributes for work_group_size_hint or vec_type_hint.

	Adding these two kernel attributes to metadata requires multiple changes:
	  HSAIL: Added parsing functions to HSAILParseMetadata.cpp, and similar files
	    Properly translates to .hsail files as 'wsh' and 'vth'
	  MDParser: Flex scanner now reads new hsail metadata, 'wsh' and 'vth'
	  Acl_metadata: added the two new metadata
	    Uint32_t wsh[3]; // Added case: RT_WORK_GROUP_SIZE_HINT
	    Char *vth; // Added case: RT_VEC_TYPE_HINT
	  Since vth is std::string, it was required to serialize, and then de-serialize for aclMetadata

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/common/v0_8/if_acl.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/gpu/MDParser/AMDILMDInterface.h#3 integrate
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/gpu/MDParser/AMDILMDParser.l#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/gpu/MDParser/AMDILMDTypes.cpp#3 integrate
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/gpu/MDParser/lex.yy.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/backends/gpu/metadata.cpp#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/include/v0_8/aclEnums.h#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/legacy-lib/include/v0_8/aclStructs.h#4 integrate
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#81 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDInterface.h#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDParser.l#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDTypes.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/lex.yy.cpp#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/metadata.cpp#12 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#26 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#21 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernel.h#15 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#40 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILModuleInfo.cpp#18 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILParseMetadata.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#47 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#51 edit
2015-10-27 18:14:07 -04:00
foreman de5ffe89f1 P4 to Git Change 1204398 by ashi1@ashi1_win50 on 2015/10/27 14:24:02
SWDEV-79695 - Back out changelist 1204387 due to ocltst build issues with new ocltst changes

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#80 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDInterface.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDParser.l#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDTypes.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/lex.yy.cpp#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/metadata.cpp#11 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#25 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#20 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernel.h#14 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#39 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILModuleInfo.cpp#17 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILParseMetadata.cpp#15 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#46 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#50 edit
2015-10-27 14:41:07 -04:00
foreman 86b7046dde P4 to Git Change 1204387 by ashi1@ashi1_win50 on 2015/10/27 14:09:10
SWDEV-79695 - HSAIL Metadata Workgroup Size Hint and Vec Type Hint added to HSAIL
	HSAIL does not handle kernel attributes for work_group_size_hint or vec_type_hint.

	Adding these two kernel attributes to metadata requires multiple changes:
	  HSAIL: Added parsing functions to HSAILParseMetadata.cpp, and similar files
	    Properly translates to .hsail files as 'wsh' and 'vth'
	  MDParser: Flex scanner now reads new hsail metadata, 'wsh' and 'vth'
	  Acl_metadata: added the two new metadata
	    Uint32_t wsh[3]; // Added case: RT_WORK_GROUP_SIZE_HINT
	    Char *vth; // Added case: RT_VEC_TYPE_HINT
	  Since vth is std::string, it was required to serialize, and then de-serialize for aclMetadata

	TODO: Runtime changes required for the use of these two metadata:
	  Runtime's gpukernel.cpp requires 4 new aclQueries during HSAILKernel::Init
	  Runtime changes are showing issues when testing

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#79 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDInterface.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDParser.l#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDTypes.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/lex.yy.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/metadata.cpp#10 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#24 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#19 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernel.h#13 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#38 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILModuleInfo.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILParseMetadata.cpp#14 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#45 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#49 edit
2015-10-27 14:18:47 -04:00
foreman 02672aa999 P4 to Git Change 1203209 by yaxunl@yaxunl_stg_win50 on 2015/10/23 14:39:53
SWDEV-67990 - SPIR-V: Rename SPRV to SPIRV.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#25 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#134 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#78 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Support/SPIRV.h#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/CMakeLists.txt#10 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCL20To12.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCL20ToSPIRV.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCL20ToSPRV.cpp#2 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCL21ToSPIRV.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCL21ToSPRV.cpp#2 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCLUtil.cpp#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/OCLUtil.h#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVInternal.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVLowerBool.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVLowerOCLBlocks.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVReader.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVToOCL20.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVUtil.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPIRVWriter.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVInternal.h#25 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVLowerBool.cpp#2 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVLowerOCLBlocks.cpp#5 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVReader.cpp#35 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVToOCL20.cpp#6 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVUtil.cpp#29 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVWriter.cpp#35 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVBasicBlock.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVBasicBlock.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDebug.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDebug.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDecorate.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVDecorate.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVEntry.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVEntry.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVEnum.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVError.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVErrorEnum.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVExtInst.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVFunction.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVFunction.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVInstruction.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVInstruction.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVModule.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVModule.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVOpCode.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVOpCodeEnum.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVStream.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVStream.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVType.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVType.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVUtil.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVValue.cpp#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPIRVValue.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRV.h#2 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVBasicBlock.cpp#4 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVBasicBlock.h#3 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVDebug.cpp#3 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVDebug.h#3 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVDecorate.cpp#6 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVDecorate.h#5 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVEntry.cpp#11 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVEntry.h#17 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVEnum.h#14 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVError.h#2 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVErrorEnum.h#3 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVExtInst.h#5 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVFunction.cpp#6 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVFunction.h#6 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVInstruction.cpp#10 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVInstruction.h#27 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVModule.cpp#24 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVModule.h#16 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVOpCode.h#12 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVOpCodeEnum.h#7 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVStream.cpp#7 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVStream.h#8 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVType.cpp#8 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVType.h#12 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVUtil.h#11 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVValue.cpp#3 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/SPRVValue.h#13 move/delete
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/libSPIRV/libSPIRV.h#1 move/add
... //depot/stg/opencl/drivers/opencl/compiler/llvm/tools/llvm-spirv/llvm-spirv.cpp#6 edit
2015-10-23 15:38:21 -04:00
foreman 120b8fba7c P4 to Git Change 1195825 by yaxunl@yaxunl_stg_win50 on 2015/09/30 07:45:04
SWDEV-77682 - Wave Limiter: Add __attribute__((amd_hint_waves_per_simd(n))) to FE for setting waves/simd hint per kernel. 0 for adaptive wave limitting. 1~10 for fixed waves/simd.
	Add query of WavesPerSimdHint metadata to compiler lib. HSAI path shouls use aclQueryInfo RT_WAVES_PER_SIMD_HINT to get the waves/simd hint value.
	This should provide a flexible workaround for bug SWDEV-56552  [CQE OCL][PERF][LNX][QR][G] 19% Perf drop is observed with chunkBp kernel in Carrizo.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/clang/include/clang/Basic/Attr.td#9 edit
... //depot/stg/opencl/drivers/opencl/compiler/clang/lib/CodeGen/CodeGenFunction.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/clang/lib/Sema/SemaDeclAttr.cpp#8 edit
... //depot/stg/opencl/drivers/opencl/compiler/clc/src/e2lModule.cpp#95 edit
... //depot/stg/opencl/drivers/opencl/compiler/clc/src/e2lModule.h#44 edit
... //depot/stg/opencl/drivers/opencl/compiler/clc/src/oclEntry.cpp#49 edit
... //depot/stg/opencl/drivers/opencl/compiler/clc/src/oclMeta.cpp#32 edit
... //depot/stg/opencl/drivers/opencl/compiler/clc/src/oclMeta.h#32 edit
... //depot/stg/opencl/drivers/opencl/compiler/edg/src/amd_ocl_attribute.c#26 edit
... //depot/stg/opencl/drivers/opencl/compiler/edg/src/attribute.c#29 edit
... //depot/stg/opencl/drivers/opencl/compiler/edg/src/err_codes.h#42 edit
... //depot/stg/opencl/drivers/opencl/compiler/edg/src/err_data.h#56 edit
... //depot/stg/opencl/drivers/opencl/compiler/edg/src/il_def.h#57 edit
... //depot/stg/opencl/drivers/opencl/compiler/edg/src/il_display.c#25 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#77 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDInterface.h#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDParser.l#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/AMDILMDTypes.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/MDParser/lex.yy.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/metadata.cpp#9 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#23 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclStructs.h#18 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/Transforms/IPO/AMDKernelPerfHint.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Target/HSAIL/HSAILKernelManager.cpp#37 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/IPO/AMDKernelPerfHint.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm32/include/llvm/Transforms/IPO/AMDKernelPerfHint.h#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm32/lib/Target/AMDIL/AMDILKernelManager.cpp#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm32/lib/Transforms/IPO/AMDKernelPerfHint.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/llc/opt/wave_limiter/explicit.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/llc_opt.tlst#57 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLAssumptionCheck.cpp#44 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#48 edit
2015-09-30 10:30:21 -04:00
foreman af1f393ed0 P4 to Git Change 1195790 by johtaylo@johtaylo-JTBUILDER03-increment on 2015/09/30 03:00:11
SWDEV-2 - Change OpenCL version number from 1898 to 1899.

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/utils/versions.hpp#1645 edit
2015-09-30 10:03:05 -04:00
foreman 4f8410dbdb P4 to Git Change 1195643 by lnguyen@P4_LN on 2015/09/29 16:07:33
SWDEV-5 - Updated power strip table.

Affected files ...

... //depot/stg/opencl/drivers/opencl/tools/teamcity/server/scripts/teamcity.xml#49 edit
2015-09-30 00:26:52 -04:00
foreman fa3fd90fb0 P4 to Git Change 1195730 by smekhano@stas-rampitec-hsa on 2015/09/29 20:53:01
SWDEV-77584 - HSA HLC: fixed reflection metadata generation on HSAIL OCL 1.2 path
	We are producing 6 extra arguments, but metadata was produced only for 3.
	Removed KE_OCL12_NUM_ARGS define to avoid confusion.

	Testing: smoke, precheckin
	Reviewed by Yaxun Liu

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/llvm/include/llvm/AMDOpenCLKernenv.h#4 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/Transforms/Scalar/AMDInsertOpenCLKernenv.cpp#10 edit
2015-09-30 00:10:02 -04:00
foreman 09571ef71b P4 to Git Change 1193083 by yaxunl@yaxunl_stg_win50 on 2015/09/22 13:13:43
SWDEV-67990 - SPIR-V: Fix translation of OpImageQuerySize[Lod]. Implement it in builtin library as __spirv_ImageQuerySize[Lod] instead of by code.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/library.cpp#18 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVInternal.h#18 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVReader.cpp#29 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVRegularizeOCL20.cpp#15 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVToOCL20.cpp#3 edit
... //depot/stg/opencl/drivers/opencl/compiler/llvm/lib/SPIRV/SPRVUtil.cpp#23 edit
... //depot/stg/opencl/drivers/opencl/library/Makefile#26 edit
... //depot/stg/opencl/drivers/opencl/library/build/Makefile.library#45 edit
... //depot/stg/opencl/drivers/opencl/library/spirv/Makefile#1 add
... //depot/stg/opencl/drivers/opencl/library/spirv/build/Makefile#1 add
... //depot/stg/opencl/drivers/opencl/library/spirv/build/Makefile.spirv#1 add
... //depot/stg/opencl/drivers/opencl/library/spirv/inc/spirv.h#1 add
... //depot/stg/opencl/drivers/opencl/library/spirv/src/ImageQuerySize.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/conformance/devel/2.0/test_conformance/opencl_conformance_tests_spirv.csv#14 edit
... //depot/stg/opencl/drivers/opencl/tests/conformance/devel/2.0/test_conformance/spirv/images_kernel_read_write.zip#1 add
... //depot/stg/opencl/drivers/opencl/tests/conformance/devel/2.0/test_conformance/spirv/images_samplerlessRead.zip#1 add
... //depot/stg/opencl/drivers/opencl/tests/conformance/devel/2.0/test_conformance/spirv/kernel_image_methods.zip#1 add
2015-09-22 13:21:01 -04:00
foreman 0c9990d426 P4 to Git Change 1192073 by atimofee@atimofee-hsa on 2015/09/18 10:21:36
ECR #333753 - HSA HLC: TBAA metadata missed in Clang because -O0 is forced in wrapper

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/clc2/driver/clc2.cpp#14 edit
... //depot/stg/opencl/drivers/opencl/compiler/clc2/wrapper/ClangWrapper.cpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#24 edit
2015-09-18 10:30:23 -04:00
foreman 1fc05cc76a P4 to Git Change 1188177 by kebai@kebai-lnx1 on 2015/09/04 15:51:30
ECR #304775 - Fix build failure on windows

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/cache.cpp#6 delete
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/cache.hpp#7 delete
... //depot/stg/opencl/drivers/opencl/compiler/tools/caching/cache.cpp#2 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/caching/cache.hpp#2 edit
2015-09-04 16:02:20 -04:00
foreman 1ca208840a P4 to Git Change 1188092 by skudchad@skudchad_test_win_opencl2 on 2015/09/04 12:33:07
ECR #304775 - Fix build break on windows.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/cache.hpp#6 edit
2015-09-04 12:42:15 -04:00
foreman 4e9e419b6b P4 to Git Change 1187959 by kebai@kebai-lnx1 on 2015/09/04 01:54:42
ECR #304775 - Modify caching library code to be used by HSAIL runtime
	1. Remove dependencies on shader compiler version, amd::Os and amd::option
	2. Let version be one the of input
	3. Change all prefix "Kernel" to prefix "String", e.g., class name is modified from KernelCache to StringCache, etc.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/cache.cpp#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/cache.hpp#5 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/caching/cache.cpp#1 branch
... //depot/stg/opencl/drivers/opencl/compiler/tools/caching/cache.hpp#1 branch
2015-09-04 02:03:45 -04:00
foreman 243af8e611 P4 to Git Change 1185746 by emankov@em-hsa-amd on 2015/08/28 13:23:26
ECR #333753 - Compiler Lib: Bug 10985 - Print compiler options as comment in .cl file when dumping using -save-temps

	Affects all targets.
	Also fixes rare problem with dumping cl as a raw binary.

	Testing: pre check-in

	Reviewers: Brian Sumner, Nikolay Haustov, Matthew Arsenault

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend.cpp#36 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend.hpp#10 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#23 edit
2015-08-28 13:36:33 -04:00
foreman f083998e44 P4 to Git Change 1185639 by nhaustov@nhaustov_hsa on 2015/08/28 07:32:17
ECR #333756 - Restore dump ISA/disassemble for HSAIL.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#75 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.cpp#50 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/hsail_be.hpp#14 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/options.hpp#17 edit
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/complib/env/AMD_DEBUG_DUMP_ISA_ALL_KERNELS/AMD_DEBUG_DUMP_ISA_ALL_KERNELS.cfg#2 delete
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/complib/env/AMD_DEBUG_DUMP_ISA_ALL_KERNELS/AMD_DEBUG_DUMP_ISA_ALL_KERNELS.known#2 delete
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/complib/input/hsail/HelloWorld_Kernel/HelloWorld_Kernel.known#3 delete
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/complib/input/hsail/HelloWorld_Kernel_g/HelloWorld_Kernel_g.known#3 delete
... //depot/stg/opencl/drivers/opencl/tests/hsa/src/complib/options/simple.cl#1 add
... //depot/stg/opencl/drivers/opencl/tests/hsa/tlst/complib.tlst#14 edit
2015-08-28 07:38:45 -04:00
foreman cc13b9f1f6 P4 to Git Change 1183928 by yaxunl@yaxunl_stg_win50 on 2015/08/24 13:06:02
ECR #354633 - SPIR-V: Let aoc2 load and save SPIR-V.

	E.g.

	aoc2 -march=hsail-64 -cl-std=CL2.0 -srctospv testReadf.cl
	compile a cl to SPIR-V binary and save it as .spv

	aoc2 -march=hsail-64 -cl-std=CL2.0 -spirv work_group_any.spv
	load a SPIR-V binary and compiles it to ISA and save it to elf in .bin

	Changed the option for round-trip translation of SPIR-V to -round-trip-spirv.

Affected files ...

... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#35 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/frontend_clang.cpp#22 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/linker.cpp#133 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#74 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#22 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/OPTIONS.def#129 edit
... //depot/stg/opencl/drivers/opencl/compiler/tools/aoc2/aoc2.cpp#76 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#47 edit
2015-08-24 13:14:41 -04:00
foreman 773ffef7d2 P4 to Git Change 1182078 by yaxunl@yaxunl_stg_win50 on 2015/08/19 07:12:32
ECR #354633 - SPIR-V: Add consumption of SPIR-V to HSAIL path.

Affected files ...

... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/build/Makefile.api#120 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/amdocl/cl_program.cpp#36 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/icd/OpenCL.def.in#11 edit
... //depot/stg/opencl/drivers/opencl/api/opencl/khronos/icd/icd_exports.map.in#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/Makefile#35 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/acl.cpp#34 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/api/v0_8/aclValidation.cpp#6 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/common/v0_8/if_acl.cpp#73 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/build/Makefile.complib#90 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/acl.h#10 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclEnums.h#21 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/include/v0_8/aclTypes.h#7 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/loaders/bif/bifinternal.hpp#11 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/spirv/Makefile#1 add
... //depot/stg/opencl/drivers/opencl/compiler/lib/spirv/build/Makefile#1 add
... //depot/stg/opencl/drivers/opencl/compiler/lib/spirv/build/Makefile.spirv#1 add
... //depot/stg/opencl/drivers/opencl/compiler/lib/spirv/spirvUtils.cpp#1 add
... //depot/stg/opencl/drivers/opencl/compiler/lib/spirv/spirvUtils.h#1 add
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/options.hpp#16 edit
... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/v0_8/libUtils.h#22 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#182 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#250 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuprogram.cpp#200 edit
... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#64 edit
... //depot/stg/opencl/drivers/opencl/tests/conformance/devel/2.0/test_conformance/spirv/select.zip#1 add
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.cpp#46 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/CLEnumCheck.h#4 edit
... //depot/stg/opencl/drivers/opencl/tests/ocltst/module/complib/aclAPI.cpp#20 edit
2015-08-19 07:28:56 -04:00