AMDGPU: Enable function calls by default

Fixes some crashes on illegal call situations which are unfortunately
still valid IR.

llvm-svn: 355051
diff --git a/llvm/test/CodeGen/AMDGPU/amdgpu-function-calls-option.ll b/llvm/test/CodeGen/AMDGPU/amdgpu-function-calls-option.ll
new file mode 100644
index 0000000..df1b401
--- /dev/null
+++ b/llvm/test/CodeGen/AMDGPU/amdgpu-function-calls-option.ll
@@ -0,0 +1,27 @@
+; RUN: llc -mtriple=amdgcn-amd-amdhsa -amdgpu-function-calls < %s | FileCheck -check-prefix=CALLS %s
+; RUN: llc -mtriple=amdgcn-amd-amdhsa < %s | FileCheck -check-prefix=CALLS %s
+; RUN: llc -mtriple=amdgcn-amd-amdhsa -amdgpu-function-calls=0 < %s | FileCheck -check-prefix=NOCALLS %s
+; RUN: llc -mtriple=r600-mesa-mesa3d < %s | FileCheck -check-prefix=NOCALLS %s
+; RUN: llc -mtriple=r600-mesa-mesa3d -amdgpu-function-calls=0 < %s | FileCheck -check-prefix=NOCALLS %s
+
+; CALLS-LABEL: callee:
+; CALLS: ;;#ASMSTART
+; CALLS: ;;#ASMEND
+
+; NOCALLS-NOT: callee
+; R600-NOT: callee
+define internal void @callee() {
+  call void asm sideeffect "", ""()
+  ret void
+}
+
+; CALLS-LABEL: kernel:
+; CALLS: s_swappc_b64
+
+; NOCALLS-LABEL: kernel:
+; NOCALLS: ;;#ASMSTART
+; NOCALLS: ;;#ASMEND
+define amdgpu_kernel void @kernel() {
+  call void @callee()
+  ret void
+}