mes/scaffold/tests
Jan Nieuwenhuizen d862f1eceb
mescc: Support --align, off by default.
* scripts/mescc.in (parse-opts): Add --align.
* module/mescc/mescc.scm (mescc:compile): Support --align, off by
default.
* module/mescc/M1.scm (infos->M1): Add #:align parameter.
(M1:merge-infos): Likewise.  Keep types.
(info->M1): Likewise.  Make alignment switchable.
* module/mescc/compile.scm (r->ident):  Do not clobber.
(ident-add): Likewise.
(clean-info): Keep types.
* module/mescc/i386/as.scm (i386:r->byte-label): New instruction.
* lib/x86-mes/x86.M1: Add instructions.
* lib/x86_64-mes/x86_64.M1: Add instructions.
* module/mescc/x86_64/as.scm (x86_64:r->byte-label,
x86_64:r->word-label, x86_64:r->long-label): New instruction.
2018-10-06 15:56:14 +02:00
..
readdir.dir mescc: Mes C Library: Add closedir, opendir, readdir. 2018-08-26 18:34:53 +02:00
00-exit-0.c mescc: x86_64 support: Add tests. 2018-08-15 17:19:50 +02:00
01-return-0.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
02-return-1.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
02-return-1.exit test: enable all tests, use expect count, add tinycc tests. 2018-05-01 16:50:29 +02:00
03-call.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
04-call-0.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
05-call-1.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
05-call-1.exit test: enable all tests, use expect count, add tinycc tests. 2018-05-01 16:50:29 +02:00
06-!call-1.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
06-call-!1.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
06-call-2.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
06-call-string.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
06-call-variable.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
06-return-void.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
07-include.c GNU Mes. 2018-07-22 14:24:36 +02:00
07-include.exit mescc: Add dir to include path. 2018-08-15 19:11:54 +02:00
7a-struct-char-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7b-struct-int-array-hello.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7b-struct-int-array-pointer.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7b-struct-int-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7c-dynarray.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7d-cast-char.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7e-struct-array-access.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7f-struct-pointer-arithmetic.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7g-struct-byte-word-field.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7h-struct-assign.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7i-struct-struct-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7i-struct-struct.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7j-strtoull.c mescc: Mes C Library: Explode libmes.c. 2018-08-16 11:43:27 +02:00
7k-empty-for.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7k-for-each-elem-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7k-for-each-elem.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7l-struct-any-size-array-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7l-struct-any-size-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7m-struct-char-array-assign.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7n-struct-struct-array.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
7o-struct-pre-post-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7o-struct-pre-post.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7p-struct-cast.c GNU Mes. 2018-07-22 14:24:36 +02:00
7q-bit-field-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7q-bit-field.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7r-sign-extend.c GNU Mes. 2018-07-22 14:24:36 +02:00
7s-struct-short.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7s-unsigned-compare.c GNU Mes. 2018-07-22 14:24:36 +02:00
7t-function-destruct.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-?-expression.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-call-?.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-double.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-inc-byte-word.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-long-long.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-struct-func.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-struct-size10.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
7u-vstack.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
08-assign-global.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
08-assign-negative.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
08-assign.c mescc: Add dir to include path. 2018-08-15 19:11:54 +02:00
10-if-0.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
11-if-1.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
12-if-==.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
13-if-!=.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
14-if-goto.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
15-if-!f.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
16-if-t.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-and-or.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-and.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-assign.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-call.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-ge.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-gt.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-le.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-lt.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-or.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-unsigned-char-le.c mescc: Support 64-bit immediates. 2018-10-06 14:51:57 +02:00
17-compare-unsigned-ge.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-unsigned-gt.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-unsigned-le.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-unsigned-long-le.c mescc: Support 64-bit immediates. 2018-10-06 14:51:57 +02:00
17-compare-unsigned-lt.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
17-compare-unsigned-short-le.c mescc: Support 64-bit immediates. 2018-10-06 14:51:57 +02:00
18-assign-shadow.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
20-while.c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
21-char[]-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
21-char[].c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
22-while-char[].c test: Remove 00-test.i indirection. 2018-08-15 17:27:11 +02:00
23-global-pointer-init-null.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
23-global-pointer-init.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
23-global-pointer-pointer-ref.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
23-global-pointer-ref.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
23-pointer-sub.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
23-pointer.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
30-strlen.c test: Cleanup includes. 2018-08-19 11:18:43 +02:00
31-oputs.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
32-call-wrap.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
32-compare.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
33-and-or.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
34-pre-post.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
35-compare-char.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
36-compare-arithmetic.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
37-compare-assign.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
38-compare-call-2.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
38-compare-call-3.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
38-compare-call.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
40-if-else.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
41-?.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
42-goto-label.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
43-for-do-while.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
44-switch-body-fallthrough.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
44-switch-fallthrough.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
44-switch.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
45-void-call.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
46-function-static.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
47-function-expression.c GNU Mes. 2018-07-22 14:24:36 +02:00
48-global-static.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
50-assert.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
51-itoa.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
51-pointer-sub.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
51-strcmp.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
51-strncmp.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
53-strcpy.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
54-argc.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
54-argv.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
55-char-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
60-math.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
61-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
62-array.c GNU Mes. 2018-07-22 14:24:36 +02:00
63-struct-array-assign.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-array-compare.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-assign.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-cell.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-function.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-local.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct-pointer.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
63-struct.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
64-make-cell.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
65-read.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
66-local-char-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
70-printf-hello.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
70-printf-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
70-printf.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
70-stdarg.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
70-strchr.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
71-struct-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
72-typedef-struct-def.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
73-union-hello.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
73-union.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
74-multi-line-string.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
75-struct-union.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
76-pointer-arithmetic-pp.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
76-pointer-arithmetic.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
77-pointer-assign.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
78-union-struct.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
79-int-array-simple.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
79-int-array.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
80-setjmp.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
81-qsort-dupes.c mescc: Mes C Library: Fix qsort to support duplicate entries. 2018-08-27 22:37:12 +02:00
81-qsort.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
82-define.c Add missing copyright headers. 2018-07-23 19:10:34 +02:00
83-heterogenoous-init.c GNU Mes. 2018-07-22 14:24:36 +02:00
84-struct-field-list.c GNU Mes. 2018-07-22 14:24:36 +02:00
85-sizeof.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
86-strncpy.c test: Remove 30-test.i indirection. 2018-08-15 18:01:14 +02:00
87-sscanf.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
88-strrchr.c GNU Mes. 2018-07-22 14:24:36 +02:00
90-goto-var.c Add missing copyright headers. 2018-07-23 19:10:34 +02:00
90-strpbrk.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
90-strspn.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
91-fseek.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
91-goto-array.c Add missing copyright headers. 2018-07-23 19:10:34 +02:00
92-stat.c GNU Mes. 2018-07-22 14:24:36 +02:00
93-fread-fwrite.c GNU Mes. 2018-07-22 14:24:36 +02:00
94-unsetenv.c GNU Mes. 2018-07-22 14:24:36 +02:00
95-signal.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
96-strto.c GNU Mes. 2018-07-22 14:24:36 +02:00
97-fopen.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
98-fopen.c GNU Mes. 2018-07-22 14:24:36 +02:00
99-readdir.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00
a0-call-trunc-char.c mescc: Fix truncation of short. 2018-10-06 11:57:04 +02:00
a0-call-trunc-int.c mescc: Support 64-bit immediates. 2018-10-06 14:51:57 +02:00
a0-call-trunc-short.c mescc: Fix truncation of short. 2018-10-06 11:57:04 +02:00
a1-global-no-align.c mescc: Support --align, off by default. 2018-10-06 15:56:14 +02:00
a1-global-no-clobber.c mescc: Support --align, off by default. 2018-10-06 15:56:14 +02:00
exit-42.i GNU Mes. 2018-07-22 14:24:36 +02:00
t.c mescc: x86_64 support: Refactor to abstracted assembly, add x86_64. 2018-08-15 18:26:55 +02:00