1dbebecc2bf00530ce09b3658641d1514d807aeeenjn		# many thanks to David Fang
2dbebecc2bf00530ce09b3658641d1514d807aeeenjn		# for providing an OSX 10.5 machine to test on
3dbebecc2bf00530ce09b3658641d1514d807aeeenjn
4dbebecc2bf00530ce09b3658641d1514d807aeeenjn     	     # count for 1 million instructions
5dbebecc2bf00530ce09b3658641d1514d807aeeenjn	     #   total is 1 + 1 + 499997*2 + 4
6dbebecc2bf00530ce09b3658641d1514d807aeeenjn
7dbebecc2bf00530ce09b3658641d1514d807aeeenjn	.globl _start
8dbebecc2bf00530ce09b3658641d1514d807aeeenjn_start:
9dbebecc2bf00530ce09b3658641d1514d807aeeenjn	xor	%ecx,%ecx		# not needed, pads total to 1M
10dbebecc2bf00530ce09b3658641d1514d807aeeenjn	mov	$499997,%ecx		# load counter
11dbebecc2bf00530ce09b3658641d1514d807aeeenjntest_loop:
12dbebecc2bf00530ce09b3658641d1514d807aeeenjn	dec	%ecx			# repeat count times
13dbebecc2bf00530ce09b3658641d1514d807aeeenjn	jnz	test_loop
14dbebecc2bf00530ce09b3658641d1514d807aeeenjn
15dbebecc2bf00530ce09b3658641d1514d807aeeenjn	#================================
16dbebecc2bf00530ce09b3658641d1514d807aeeenjn	# Exit
17dbebecc2bf00530ce09b3658641d1514d807aeeenjn	#================================
18dbebecc2bf00530ce09b3658641d1514d807aeeenjn
19dbebecc2bf00530ce09b3658641d1514d807aeeenjn	# syscall numbers in /usr/include/sys/syscall.h on OSX
20dbebecc2bf00530ce09b3658641d1514d807aeeenjn	#                 in arc/x86/include/asm/unistd_32.h on Linux
21dbebecc2bf00530ce09b3658641d1514d807aeeenjn	# disassemble on OSX otool -tV
22dbebecc2bf00530ce09b3658641d1514d807aeeenjnexit:
23dbebecc2bf00530ce09b3658641d1514d807aeeenjn#ifdef VGO_darwin
24dbebecc2bf00530ce09b3658641d1514d807aeeenjn	pushl   $0			# we return 0
25dbebecc2bf00530ce09b3658641d1514d807aeeenjn	xor	%eax,%eax
26dbebecc2bf00530ce09b3658641d1514d807aeeenjn	inc	%eax	 		# put exit syscall number (1) in eax
27dbebecc2bf00530ce09b3658641d1514d807aeeenjn	int     $0x80             	# and exit
28dbebecc2bf00530ce09b3658641d1514d807aeeenjn#else
29dbebecc2bf00530ce09b3658641d1514d807aeeenjn	xor     %ebx,%ebx		# we return 0
30dbebecc2bf00530ce09b3658641d1514d807aeeenjn	xor	%eax,%eax
31dbebecc2bf00530ce09b3658641d1514d807aeeenjn	inc	%eax	 		# put exit syscall number (1) in eax
32dbebecc2bf00530ce09b3658641d1514d807aeeenjn	int     $0x80             	# and exit
33dbebecc2bf00530ce09b3658641d1514d807aeeenjn#endif
34