tccgen.c: doubles need to be aligned, on ARM. The section_reserve() in init_putv does not do that. -D ONE_SOURCE: is now the default and not longer needed. Also, tcc.h now sets the default native target. These both make compiling tcc simple as "gcc tcc.c -o tcc -ldl" again. arm-asm.c: enable pseudo asm also for inline asm tests/tests2/Makefile: disable bitfield tests except on windows and x86_64 and don't generate-always tcc.c: fix a loop with -dt on errors configure: print compiler version (as recognized) tccpp.c: actually define symbols for tcc -dt clear static variables (needed for -dt or libtcc usage) 96_nodata_wanted.c: use __label__ instead of asm lib/files: use native symbols (__i386__ etc.) instead of TCC_TARGET_...
		
			
				
	
	
		
			31 lines
		
	
	
	
		
			483 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
	
		
			483 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
/* ---------------------------------------------- */
 | 
						|
/* alloca86.S */
 | 
						|
 | 
						|
.globl alloca
 | 
						|
 | 
						|
alloca:
 | 
						|
    pop     %edx
 | 
						|
    pop     %eax
 | 
						|
    add     $3,%eax
 | 
						|
    and     $-4,%eax
 | 
						|
    jz      p3
 | 
						|
 | 
						|
#ifdef _WIN32
 | 
						|
p1:
 | 
						|
    cmp     $4096,%eax
 | 
						|
    jbe     p2
 | 
						|
    test    %eax,-4096(%esp)
 | 
						|
    sub     $4096,%esp
 | 
						|
    sub     $4096,%eax
 | 
						|
    jmp p1
 | 
						|
p2:
 | 
						|
#endif
 | 
						|
 | 
						|
    sub     %eax,%esp
 | 
						|
    mov     %esp,%eax
 | 
						|
p3:
 | 
						|
    push    %edx
 | 
						|
    push    %edx
 | 
						|
    ret
 | 
						|
 | 
						|
/* ---------------------------------------------- */
 |