llvm-6502/test/CodeGen/X86/GC/erlang-gc.ll
Yiannis Tsiouris 477de3a785 Add a GC plugin for Erlang
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177867 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-25 13:47:46 +00:00

26 lines
933 B
LLVM

; RUN: llc -mtriple=x86_64-linux-gnu < %s | FileCheck %s --check-prefix=CHECK64
; RUN: llc -mtriple=i686-linux-gnu < %s | FileCheck %s --check-prefix=CHECK32
define i32 @main(i32 %x) nounwind gc "erlang" {
%puts = tail call i32 @foo(i32 %x)
ret i32 0
; CHECK64: .section .note.gc,"",@progbits
; CHECK64-NEXT: .align 8
; CHECK64-NEXT: .short 1 # safe point count
; CHECK64-NEXT: .long .Ltmp0 # safe point address
; CHECK64-NEXT: .short 1 # stack frame size (in words)
; CHECK64-NEXT: .short 0 # stack arity
; CHECK64-NEXT: .short 0 # live root count
; CHECK32: .section .note.gc,"",@progbits
; CHECK32-NEXT: .align 4
; CHECK32-NEXT: .short 1 # safe point count
; CHECK32-NEXT: .long .Ltmp0 # safe point address
; CHECK32-NEXT: .short 3 # stack frame size (in words)
; CHECK32-NEXT: .short 0 # stack arity
; CHECK32-NEXT: .short 0 # live root count
}
declare i32 @foo(i32)