30 lines
		
	
	
		
			777 B
		
	
	
	
		
			LLVM
		
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			777 B
		
	
	
	
		
			LLVM
		
	
	
	
| ; 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"
 |