brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.1 KiB · 56c5ceb Raw
30 lines · plain
1; Test that the scale (-memprof-mapping-scale) and granularity (-memprof-mapping-granularity) command-line options work as expected2;3; RUN: opt < %s -passes='function(memprof),memprof-module' -memprof-mapping-granularity 32 -S | FileCheck --check-prefix=CHECK-GRAN %s4; RUN: opt < %s -passes='function(memprof),memprof-module' -memprof-mapping-scale 1 -S | FileCheck --check-prefix=CHECK-SCALE %s5; RUN: opt < %s -passes='function(memprof),memprof-module' -memprof-mapping-granularity 16 -memprof-mapping-scale 0 -S | FileCheck --check-prefix=CHECK-BOTH %s6target triple = "x86_64-unknown-linux-gnu"7 8define i32 @read(ptr %a) {9entry:10  %tmp1 = load i32, ptr %a, align 411  ret i32 %tmp112}13; CHECK-GRAN-LABEL: @read14; CHECK-GRAN-NOT:     ret15; CHECK-GRAN:         and {{.*}} -3216; CHECK-GRAN-NEXT:    lshr {{.*}} 317; CHECK-GRAN:         ret18 19; CHECK-SCALE-LABEL: @read20; CHECK-SCALE-NOT:     ret21; CHECK-SCALE:         and {{.*}} -6422; CHECK-SCALE-NEXT:    lshr {{.*}} 123; CHECK-SCALE:         ret24 25; CHECK-BOTH-LABEL: @read26; CHECK-BOTH-NOT:     ret27; CHECK-BOTH:         and {{.*}} -1628; CHECK-BOTH-NEXT:    lshr {{.*}} 029; CHECK-BOTH:         ret30