mes/stage0
Jan Nieuwenhuizen 12b41e0e86 mescc: Tinycc support: byte and word struct fields.
* stage0/x86.M1 (mov____%al,0x8(%edx)):
  (mov____%ax,(%edx)):
  (mov____%ax,0x32(%edx)):
  (mov____%ax,0x8(%edx)):
  (movzbl_0x32(%eax),%eax):
  (movzbl_0x8(%eax),%eax):
  (movzwl_0x32(%eax),%eax):
  (movzwl_0x8(%eax),%eax): New define.
* module/mes/as-i386.mes (i386:word-accu->base-mem):
  (i386:byte-accu->base-mem+n):
  (i386:word-accu->base-mem+n):
  (i386:byte-mem+n->accu):
  (i386:word-mem+n->accu): New function.
* module/mes/as-i386.scm: Export them.
* module/language/c99/compiler.mes (struct-field): Use actual size for
  simple types (WAS: 4).
  (decl->info):
  (expr->accu): Respect byte and word struct field sizes.
* scaffold/tests/7g-struct-byte-word-field.c: Test it.
* make.scm (add-scaffold-test): Build it.
2017-08-06 12:27:16 +02:00
..
elf-0footer.hex2 mescc: Produce object files in hex2 format, remove hex3. 2017-06-25 09:33:55 +02:00
elf32-0header.hex2 mescc: Produce object files in hex2 format, remove hex3. 2017-06-25 09:33:55 +02:00
elf32-body-exit-42.hex2 stage0: Move to-be-generated part of body to footer. 2017-06-21 07:05:26 +02:00
elf32-footer-single-main.hex2 mescc: Produce object files in hex2 format, remove hex3. 2017-06-25 09:33:55 +02:00
elf32-header.hex2 mescc: Produce object files in hex2 format, remove hex3. 2017-06-25 09:33:55 +02:00
elf32.hex3 stage0: Add stage0 hex2 gdb header and footer example. 2017-06-18 21:06:27 +02:00
exit-42.c mescc: Produce object files in hex2 format, remove hex3. 2017-06-25 09:33:55 +02:00
x86.M1 mescc: Tinycc support: byte and word struct fields. 2017-08-06 12:27:16 +02:00