// RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -emit-llvm %s -o - | FileCheck %s

// CHECK: @.str = private unnamed_addr addrspace(4) constant [6 x i8] c"g_str\00", align 1
// CHECK: @g_str ={{.*}} addrspace(1) global ptr addrspacecast (ptr addrspace(4) @.str to ptr), align 8
// CHECK: @g_array ={{.*}} addrspace(1) global [8 x i8] c"g_array\00", align 1
// CHECK: @.str.1 = private unnamed_addr addrspace(4) constant [6 x i8] c"l_str\00", align 1
// CHECK: @__const._Z1fv.l_array = private unnamed_addr addrspace(4) constant [8 x i8] c"l_array\00", align 1

const char* g_str = "g_str";
char g_array[] = "g_array";

void g(const char* p);

// CHECK-LABEL: define{{.*}} void @_Z1fv()
void f() {
  const char* l_str = "l_str";

  // CHECK: call void @llvm.memcpy.p0.p4.i64
  char l_array[] = "l_array";

  g(g_str);
  g(g_array);
  g(l_str);
  g(l_array);

  const char* p = g_str;
  g(p);
}

// CHECK-LABEL: define{{.*}} void @_Z1ev
void e() {
  g("string literal");
  g("string literal");
}
