リスト20 リスト21


〔リスト20〕配列を初期化する例2(test59.c)
	#include <stdio.h>
	int main(void)
	{
	 int tbl1[20] = {[0 ... 9]=2,[10 ... 19]4};
	 int tbl2[20] =
	      {2,2,2,2,2,2,2,2,2,2,4,4,4,4,4,4,4,4,4,4};
	 return;
	}


〔リスト21〕test59.cから生成されたアセンブラ(test59.s)
	 .file "test59.c"
	 .version "01.01"
	gcc2_compiled.:
	.section .rodata
	 .align 4
	.LC0:
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .align 4
	.LC1:
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 2
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	 .long 4
	.text
	 .align 4
	.globl main
	 .type  main,@function
	main:
	 pushl %ebp
	 movl %esp,%ebp
	 subl $176,%esp
	 pushl %edi
	 pushl %esi
	 leal -80(%ebp),%edi
	 movl $.LC0,%esi
	 cld
	 movl $20,%ecx
	 rep
	 movsl
	 leal -160(%ebp),%edi
	 movl $.LC1,%esi
	 cld
	 movl $20,%ecx
	 rep
	 movsl
	 popl %esi
	 popl %edi
	 movl %ebp,%esp
	 popl %ebp
	 ret
	.Lfe1:
	 .size  main,.Lfe1-main
	 .ident "GCC: (GNU) 2.95.3 20010315 (release)"