xref: /llvm-project/llvm/test/CodeGen/X86/bss_pagealigned.ll (revision 2f448bf509432c1a19ec46ab8cbc7353c03c6280)
1; RUN: llc --code-model=kernel < %s -asm-verbose=0 | FileCheck %s
2; PR4933
3target 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"
4target triple = "x86_64-unknown-linux-gnu"
5%struct.kmem_cache_order_objects = type { i64 }
6declare ptr @memset(ptr, i32, i64)
7define void @unxlate_dev_mem_ptr(i64 %phis, ptr %addr) nounwind {
8  %pte.addr.i = alloca ptr
9  %call8 = call ptr @memset(ptr @bm_pte, i32 0, i64 4096)
10; CHECK:      movl    $4096, %edx
11; CHECK-NEXT: movq    $bm_pte, %rdi
12; CHECK-NEXT: xorl    %esi, %esi
13; CHECK-NEXT: callq   memset
14  ret void
15}
16@bm_pte = internal global [512 x %struct.kmem_cache_order_objects] zeroinitializer, section ".bss.page_aligned", align 4096
17; CHECK: .section        .bss.page_aligned,"aw",@nobits
18; CHECK-NEXT: .p2align  12
19; CHECK-NEXT: bm_pte:
20; CHECK-NEXT: .zero   4096
21; CHECK-NEXT: .size   bm_pte, 4096
22