mirror of
				https://github.com/c64scene-ar/llvm-6502.git
				synced 2025-10-31 08:16:47 +00:00 
			
		
		
		
	Thumb1 has legitimate reasons for preferring 32-bit alignment of types i1/i8/i16, since the 16-bit encoding of "add rD, sp, #imm" requires #imm to be a multiple of 4. However, this is a trade-off betweem code size and RAM usage; the DataLayout string is not the best place to represent it even if desired. So this patch removes the extra Thumb requirements, hopefully making ARM and Thumb completely compatible in this respect. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@219734 91177308-0d34-0410-b5e6-96231b3b80d8
		
			
				
	
	
		
			11 lines
		
	
	
		
			458 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
			
		
		
	
	
			11 lines
		
	
	
		
			458 B
		
	
	
	
		
			LLVM
		
	
	
	
	
	
| ; RUN: llc < %s | FileCheck %s
 | |
| target triple = "thumbv7-apple-darwin10.0.0"
 | |
| 
 | |
| ; CHECK: align 3
 | |
| @.v = private unnamed_addr constant <4 x i32> <i32 1, i32 2, i32 3, i32 4>, align 8
 | |
| ; CHECK: align 4
 | |
| @.strA = private unnamed_addr constant [4 x i64] zeroinitializer
 | |
| ; CHECK-NOT: align
 | |
| @.strB = private unnamed_addr constant [4 x i8] c"foo\00", align 1
 | |
| @.strC = private unnamed_addr constant [4 x i8] c"baz\00", section "__TEXT,__cstring,cstring_literals", align 1
 |