From fc5436c95132cbbf3c2fc950d3c5906cc8ed62dd Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Wed, 5 Mar 2014 20:09:15 +0000 Subject: Always print the implicit .text at the start of an asm file. Before llvm-mc would print it, but llc was assuming that it would produce another section changing directive before one was needed. That assumption is false with inline asm. Fixes PR19049. Another option would be to always create the section, but in the asm printer avoid printing sections changes during initialization. That would work, but * We do use the fact that llvm-mc prints it in testing. The tests can be changed if needed. * A quick poll on IRC suggest that most developers prefer the implicit .text to be printed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@203001 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/X86/GC/ocaml-gc.ll | 6 ++++-- test/CodeGen/X86/pr19049.ll | 7 +++++++ 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 test/CodeGen/X86/pr19049.ll (limited to 'test/CodeGen') diff --git a/test/CodeGen/X86/GC/ocaml-gc.ll b/test/CodeGen/X86/GC/ocaml-gc.ll index 6d5f8aebe1..37ddaf90bf 100644 --- a/test/CodeGen/X86/GC/ocaml-gc.ll +++ b/test/CodeGen/X86/GC/ocaml-gc.ll @@ -1,8 +1,10 @@ ; RUN: llc < %s -mtriple=x86_64-linux-gnu | FileCheck %s -define i32 @main(i32 %x) nounwind gc "ocaml" { ; CHECK: .text -; CHECK-NEXT: .globl "caml__code_begin" +; CHECK-NEXT: .file "" + +define i32 @main(i32 %x) nounwind gc "ocaml" { +; CHECK: .globl "caml__code_begin" ; CHECK-NEXT: "caml__code_begin": ; CHECK-NEXT: .data ; CHECK-NEXT: .globl "caml__data_begin" diff --git a/test/CodeGen/X86/pr19049.ll b/test/CodeGen/X86/pr19049.ll new file mode 100644 index 0000000000..027c9815e0 --- /dev/null +++ b/test/CodeGen/X86/pr19049.ll @@ -0,0 +1,7 @@ +; RUN: llc -mtriple x86_64-pc-linux %s -o - | FileCheck %s + +module asm ".pushsection foo" +module asm ".popsection" + +; CHECK: .section foo,"",@progbits +; CHECK: .text -- cgit v1.2.3