| ; Check that |
| ; 1. ".lto_discard" works as module inlineasm marker and its argument symbols |
| ; are discarded. |
| ; 2. there is no reassignment error in the presence of ".lto_discard" |
| ; RUN: llc < %s | FileCheck %s |
| |
| ; CHECK: .data |
| ; CHECK-NOT: .weak foo |
| ; CHECK-NOT: .set foo, bar |
| ; CHECK: .globl foo |
| ; CHECK: foo: |
| ; CHECK: .byte 1 |
| |
| target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" |
| target triple = "x86_64-unknown-linux-gnu" |
| |
| module asm ".lto_discard foo" |
| module asm " .text" |
| module asm "bar:" |
| module asm " .data" |
| module asm ".weak foo" |
| module asm ".set foo, bar" |
| module asm ".weak foo" |
| module asm ".set foo, bar" |
| |
| module asm ".lto_discard" |
| module asm ".globl foo" |
| module asm "foo:" |
| module asm " .byte 1" |