• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; Test that -disable-builtin works correctly.
2;
3; RUN: opt < %s -instcombine -disable-builtin strcat -S | FileCheck %s
4;
5; RUN: not opt < %s -instcombine -disable-builtin foobar -S 2>&1 | FileCheck --check-prefix=FOOBAR %s
6; FOOBAR: cannot disable nonexistent builtin function foobar
7
8target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
9
10@empty = constant [1 x i8] c"\00", align 1
11
12declare i8* @strcat(i8*, i8*)
13
14define i8* @test_strcat(i8* %x) {
15; CHECK-LABEL: @test_strcat(
16  %empty = getelementptr [1 x i8], [1 x i8]* @empty, i32 0, i32 0
17  %ret = call i8* @strcat(i8* %x, i8* %empty)
18  ret i8* %ret
19; CHECK: call i8* @strcat
20}
21
22