brintos

brintos / llvm-project-archived public Read only

0
0
Text · 7.9 KiB · 649dc85 Raw
207 lines · plain
1// REQUIRES: !system-windows2 3// Test flush-denormals-to-zero enabled uses oclc_daz_opt_on4 5// RUN: %clang -### -target amdgcn-amd-amdhsa \6// RUN:   -x cl -mcpu=gfx900 \7// RUN:   --rocm-path=%S/Inputs/rocm \8// RUN:   %s \9// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DEFAULT,GFX900-DEFAULT,GFX900,WAVE64 %s10 11 12 13// Make sure the different denormal default is respected for gfx814// RUN: %clang -### -target amdgcn-amd-amdhsa \15// RUN:   -x cl -mcpu=gfx803 \16// RUN:   --rocm-path=%S/Inputs/rocm \17// RUN:   %s \18// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DEFAULT,GFX803-DEFAULT,GFX803,WAVE64 %s19 20 21 22// Make sure the non-canonical name works23// RUN: %clang -### -target amdgcn-amd-amdhsa \24// RUN:   -x cl -mcpu=fiji \25// RUN:   --rocm-path=%S/Inputs/rocm \26// RUN:   %s \27// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DEFAULT,GFX803-DEFAULT,GFX803,WAVE64 %s28 29 30 31// RUN: %clang -### -target amdgcn-amd-amdhsa \32// RUN:   -x cl -mcpu=gfx900 \33// RUN:   -cl-denorms-are-zero \34// RUN:   --rocm-path=%S/Inputs/rocm \35// RUN:   %s \36// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DAZ,GFX900,WAVE64 %s37 38 39// RUN: %clang -### -target amdgcn-amd-amdhsa \40// RUN:   -x cl -mcpu=gfx803 \41// RUN:   -cl-denorms-are-zero \42// RUN:   --rocm-path=%S/Inputs/rocm \43// RUN:   %s \44// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DAZ,GFX803,WAVE64 %s45 46 47 48// RUN: %clang -### -target amdgcn-amd-amdhsa \49// RUN:   -x cl -mcpu=gfx803 \50// RUN:   -cl-finite-math-only \51// RUN:   --rocm-path=%S/Inputs/rocm \52// RUN:   %s \53// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-FINITE-ONLY,GFX803,WAVE64 %s54 55 56 57// RUN: %clang -### -target amdgcn-amd-amdhsa    \58// RUN:   -x cl -mcpu=gfx803                     \59// RUN:   -cl-fp32-correctly-rounded-divide-sqrt \60// RUN:   --rocm-path=%S/Inputs/rocm \61// RUN:   %s \62// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-CORRECT-SQRT,GFX803,WAVE64 %s63 64 65 66// RUN: %clang -### -target amdgcn-amd-amdhsa    \67// RUN:   -x cl -mcpu=gfx803                     \68// RUN:   -cl-fast-relaxed-math \69// RUN:   --rocm-path=%S/Inputs/rocm \70// RUN:   %s \71// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-FAST-RELAXED,GFX803,WAVE64 %s72 73 74 75// RUN: %clang -### -target amdgcn-amd-amdhsa    \76// RUN:   -x cl -mcpu=gfx803                     \77// RUN:   -cl-unsafe-math-optimizations \78// RUN:   --rocm-path=%S/Inputs/rocm \79// RUN:   %s 2>&1 | \80// RUN:   FileCheck  --check-prefixes=COMMON,GFX803,WAVE64 %s81 82// RUN: %clang -### -target amdgcn-amd-amdhsa    \83// RUN:   -x cl -mcpu=gfx1010                    \84// RUN:   --rocm-path=%S/Inputs/rocm \85// RUN:   %s 2>&1 | \86// RUN:   FileCheck  --check-prefix=WAVE32 %s87 88// RUN: %clang -### -target amdgcn-amd-amdhsa    \89// RUN:   -x cl -mcpu=gfx1011                    \90// RUN:   --rocm-path=%S/Inputs/rocm \91// RUN:   %s 2>&1 | \92// RUN:   FileCheck  --check-prefix=WAVE32 %s93 94// RUN: %clang -### -target amdgcn-amd-amdhsa    \95// RUN:   -x cl -mcpu=gfx1012                    \96// RUN:   --rocm-path=%S/Inputs/rocm \97// RUN:   %s 2>&1 | \98// RUN:   FileCheck  --check-prefix=WAVE32 %s99 100 101// RUN: %clang -### -target amdgcn-amd-amdhsa    \102// RUN:   -x cl -mcpu=gfx1010 -mwavefrontsize64  \103// RUN:   --rocm-path=%S/Inputs/rocm \104// RUN:   %s 2>&1 | \105// RUN:   FileCheck  --check-prefix=WAVE64 %s106 107// RUN: %clang -### -target amdgcn-amd-amdhsa    \108// RUN:   -x cl -mcpu=gfx1010 -mwavefrontsize64 -mno-wavefrontsize64  \109// RUN:   --rocm-path=%S/Inputs/rocm \110// RUN:   %s 2>&1 | \111// RUN:   FileCheck  --check-prefix=WAVE32 %s112 113// Ignore -mno-wavefrontsize64 without wave32 support114// RUN: %clang -### -target amdgcn-amd-amdhsa       \115// RUN:   -x cl -mcpu=gfx803  -mno-wavefrontsize64  \116// RUN:   --rocm-path=%S/Inputs/rocm    \117// RUN:   %s 2>&1 | \118// RUN:   FileCheck  --check-prefixes=GFX803,WAVE64 %s119 120 121 122// Test --hip-device-lib-path format123// RUN: %clang -### -target amdgcn-amd-amdhsa \124// RUN:   -x cl -mcpu=gfx900 \125// RUN:   --hip-device-lib-path=%S/Inputs/rocm/amdgcn/bitcode \126// RUN:   %S/opencl.cl \127// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DEFAULT,GFX900-DEFAULT,GFX900,WAVE64 %s128 129// Test environment variable HIP_DEVICE_LIB_PATH130// RUN: env HIP_DEVICE_LIB_PATH=%S/Inputs/rocm/amdgcn/bitcode %clang -### -target amdgcn-amd-amdhsa \131// RUN:   -x cl -mcpu=gfx900 \132// RUN:   %S/opencl.cl \133// RUN: 2>&1 | FileCheck  --check-prefixes=COMMON,COMMON-DEFAULT,GFX900-DEFAULT,GFX900,WAVE64 %s134 135// RUN: %clang -### -target amdgcn-amd-amdhsa \136// RUN:   -x cl -mcpu=gfx908:xnack+ -fsanitize=address \137// RUN:   --rocm-path=%S/Inputs/rocm \138// RUN:   %s \139// RUN: 2>&1 | FileCheck  --check-prefixes=ASAN,COMMON %s140 141// RUN: %clang -### -target amdgcn-amd-amdhsa \142// RUN:   -x cl -mcpu=gfx1250 -fsanitize=address \143// RUN:   --rocm-path=%S/Inputs/rocm \144// RUN:   %s \145// RUN: 2>&1 | FileCheck  --check-prefixes=ASAN,COMMON %s146 147// RUN: %clang -### -target amdgcn-amd-amdhsa \148// RUN:   -x cl -mcpu=gfx1251 -fsanitize=address \149// RUN:   --rocm-path=%S/Inputs/rocm \150// RUN:   %s \151// RUN: 2>&1 | FileCheck  --check-prefixes=ASAN,COMMON %s152 153// RUN: %clang -### -target amdgcn-amd-amdhsa \154// RUN:   -x cl -mcpu=gfx908:xnack+ \155// RUN:   --rocm-path=%S/Inputs/rocm \156// RUN:   %s \157// RUN: 2>&1 | FileCheck  --check-prefixes=NOASAN %s158 159// COMMON: "-triple" "amdgcn-amd-amdhsa"160// COMMON-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/opencl.bc"161// ASAN-SAME: "-mlink-bitcode-file" "{{.*}}/amdgcn/bitcode/asanrtl.bc"162// COMMON-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/ocml.bc"163// COMMON-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/ockl.bc"164 165// GFX900-DEFAULT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_daz_opt_off.bc"166// GFX803-DEFAULT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_daz_opt_on.bc"167// GFX700-DEFAULT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_daz_opt_on.bc"168// COMMON-DAZ-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_daz_opt_on.bc"169 170 171// COMMON-DEFAULT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_unsafe_math_off.bc"172// COMMON-DEFAULT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_finite_only_off.bc"173// COMMON-DEFAULT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc"174 175 176// COMMON-FINITE-ONLY-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_unsafe_math_off.bc"177// COMMON-FINITE-ONLY-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_finite_only_on.bc"178// COMMON-FINITE-ONLY-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc"179 180 181// COMMON-CORRECT-SQRT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_unsafe_math_off.bc"182// COMMON-CORRECT-SQRT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_finite_only_off.bc"183// COMMON-CORRECT-SQRT-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_correctly_rounded_sqrt_on.bc"184 185 186// COMMON-FAST-RELAXED-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_unsafe_math_on.bc"187// COMMON-FAST-RELAXED-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_finite_only_on.bc"188// COMMON-FAST-RELAXED-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc"189 190 191// COMMON-UNSAFE-MATH-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_unsafe_math_on.bc"192// COMMON-UNSAFE-MATH-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_finite_only_off.bc"193// COMMON-UNSAFE-MATH-SAME: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_correctly_rounded_sqrt_off.bc"194 195// ASAN-SAME: "-fsanitize=address"196 197// NOASAN-NOT: "-fsanitize=address"198// NOASAN-NOT: amdgcn/bitcode/asanrtl.bc199 200// WAVE64: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_wavefrontsize64_on.bc"201// WAVE32: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_wavefrontsize64_off.bc"202 203// GFX900: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_isa_version_900.bc"204// GFX803: "-mlink-builtin-bitcode" "{{.*}}/amdgcn/bitcode/oclc_isa_version_803.bc"205 206kernel void func(void);207