blob: 6f8351bb5bddf3a9ffe345ed868c4ab25a350539 [file] [log] [blame]
Hal Finkelad4d9f52012-02-22 21:11:47 +00001; RUN: llc < %s -mtriple=powerpc64-unknown-linux-gnu -mcpu=g5 | FileCheck %s
2
Roman Divackyded7f012012-02-27 20:42:19 +00003; CHECK: .section .opd,"aw",@progbits
4; CHECK-NEXT: test1:
Dan Gohman61d15ae2016-01-26 00:03:25 +00005; CHECK-NEXT: .p2align 3
Rafael Espindola092b6192015-03-05 19:47:50 +00006; CHECK-NEXT: .quad .L[[BEGIN:.*]]
Roman Divacky8fe40cd2012-02-27 20:20:47 +00007; CHECK-NEXT: .quad .TOC.@tocbase
Roman Divackyd4f6f422012-09-18 16:55:29 +00008; CHECK-NEXT: .quad 0
Roman Divacky8fe40cd2012-02-27 20:20:47 +00009; CHECK-NEXT: .text
Rafael Espindola092b6192015-03-05 19:47:50 +000010; CHECK-NEXT: .L[[BEGIN]]:
Hal Finkelad4d9f52012-02-22 21:11:47 +000011
12define i32 @test1(i32 %a) nounwind {
13entry:
14 ret i32 %a
15}
16
17; Until recently, binutils accepted the .size directive as:
18; .size test1, .Ltmp0-test1
19; however, using this directive with recent binutils will result in the error:
20; .size expression for XXX does not evaluate to a constant
21; so we must use the label which actually tags the start of the function.
Rafael Espindola86bd6a12015-03-05 18:55:50 +000022; CHECK: .size test1, .Lfunc_end0-.L[[BEGIN]]