Fixed Hawaii link issues
1. Split hip_ir.ll to hip_hc.ll and hip_hc_gfx803.ll
a. hip_hc.ll contains arch generic ir implementations
b. hip_hc_gfx803.ll contains gfx803 (fiji, polaris) specific ir
2. HIPCC can now parse --amdgpu-target=*.
a. Usage: hipcc --amdgpu-target=gfx803 --amdgpu-target=gfx701
b. TODO: Convert to --amdgpu-target=gfx803,gfx701
3. With LLC in HCC able to generate native f16 isa, removed inline half asm math ops
4. Fixed threadfence and threadfence_block to use functions in rocdl
Change-Id: Ic9a9e3e04139b0d75d2c2a263c030ca77adc1019
[ROCm/clr commit: 60ec83c683]
Este cometimento está contido em:
@@ -32,6 +32,47 @@ struct hipHalfHolder{
|
||||
#define HINF 65504
|
||||
|
||||
static struct hipHalfHolder __hInfValue = {HINF};
|
||||
|
||||
__device__ __half __hadd(__half a, __half b) {
|
||||
return a + b;
|
||||
}
|
||||
|
||||
__device__ __half __hadd_sat(__half a, __half b) {
|
||||
return a + b;
|
||||
}
|
||||
|
||||
__device__ __half __hfma(__half a, __half b, __half c) {
|
||||
return a * b + c;
|
||||
}
|
||||
|
||||
__device__ __half __hfma_sat(__half a, __half b, __half c) {
|
||||
return a * b + c;
|
||||
}
|
||||
|
||||
__device__ __half __hmul(__half a, __half b) {
|
||||
return a * b;
|
||||
}
|
||||
|
||||
__device__ __half __hmul_sat(__half a, __half b) {
|
||||
return a * b;
|
||||
}
|
||||
|
||||
__device__ __half __hneg(__half a) {
|
||||
return -a;
|
||||
}
|
||||
|
||||
__device__ __half __hsub(__half a, __half b) {
|
||||
return a - b;
|
||||
}
|
||||
|
||||
__device__ __half __hsub_sat(__half a, __half b) {
|
||||
return a - b;
|
||||
}
|
||||
|
||||
__device__ __half hdiv(__half a, __half b) {
|
||||
return a / b;
|
||||
}
|
||||
|
||||
/*
|
||||
Half comparision Functions
|
||||
*/
|
||||
|
||||
Criar uma nova questão referindo esta
Bloquear um utilizador