mes/scaffold
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
..
tests mescc: Tinycc support: byte and word struct fields. 2017-08-06 12:27:16 +02:00
tinycc mescc: Import tinycc test suite. 2017-07-26 11:36:07 +02:00
argv.c mescc: Write object files in hex2 or hex3 format. 2017-06-11 13:11:40 +02:00
b-0.mes mescc: Run module/base-0.mes. 2017-03-26 21:13:01 +02:00
hello.c mescc: Write object files in hex2 or hex3 format. 2017-06-11 13:11:40 +02:00
m.c mescc: Write object files in hex2 or hex3 format. 2017-06-11 13:11:40 +02:00
malloc.c mescc: Support regular C99 compile, headers + mlibc. 2017-05-02 23:30:46 +02:00
mesmes build: Refactor. 2017-04-12 21:27:59 +02:00
micro-mes.c mescc: Write object files in hex2 or hex3 format. 2017-06-11 13:11:40 +02:00
t-0.mes mescc: Run module/base-0.mes. 2017-03-26 21:13:01 +02:00