mescc: Support --align, off by default.
authorJan Nieuwenhuizen <janneke@gnu.org>
Sat, 6 Oct 2018 13:56:14 +0000 (15:56 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sat, 6 Oct 2018 13:56:14 +0000 (15:56 +0200)
commitd862f1eceb32906f10345af3eee945f0aa039342
treec258185c463d2e6fab956925063701bf51f51fec
parent3584f450567f48cf8c31382a35b9c5e91a9dd674
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.
build-aux/check-mescc.sh
lib/x86-mes/x86.M1
lib/x86_64-mes/x86_64.M1
module/mescc/M1.scm
module/mescc/compile.scm
module/mescc/i386/as.scm
module/mescc/mescc.scm
module/mescc/x86_64/as.scm
scaffold/tests/a1-global-no-align.c [new file with mode: 0644]
scaffold/tests/a1-global-no-clobber.c [new file with mode: 0644]
scripts/mescc.in