build: Use released M0 intead of M1.
authorJan Nieuwenhuizen <janneke@gnu.org>
Wed, 12 Jul 2017 17:41:31 +0000 (19:41 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Wed, 26 Jul 2017 09:36:07 +0000 (11:36 +0200)
configure
guile/guix/make.scm
module/mes/M1.mes

index aa5ca891b1da5004fe1b86b7291a5fb34c22f7b4..8bace5daa88ce83f7bcf27b6f883bb568d3e5e7f 100755 (executable)
--- a/configure
+++ b/configure
@@ -174,6 +174,7 @@ exec ${GUILE} --no-auto-compile -L $(pwd) -C $(pwd) -e 'main' -s "$0" ${1+"$@"}
                  (if (member ARCH '("i686" "arm")) (string-append BUILD_TRIPLET "-" CC)
                      "i686-unknown-linux-gnu-gcc")))
 (define HEX2 (or (getenv "HEX2") "hex2"))
+(define M1 (or (getenv "M1") "M0"))
 
 (define (parse-opts args)
   (let* ((option-spec
index edeb2715c96cea9ca6734b756e5c82c30c5672d0..f50cc86874d87ae125efcf18a73773cd3a6d4d18 100644 (file)
                         (store #:add-file "guile/mes/as-i386.go")
                         (store #:add-file "guile/mes/M1.go")))))
 
-(define %M1 (PATH-search-path "M1"))
+(define %M1 (PATH-search-path "M0")) ; M1 is in unreleased mescc-tools 0.2
 (define %M1-FLAGS
   '("--LittleEndian"
-    "--Architecture=1"
+    ;;"--Architecture=1"
     ;;"--BaseAddress=0x1000000"
     ))
 (define* (M1.asm #:key (m1 %M1) (m1-flags %M1-FLAGS))
index 931eb51328ba7a3641bfe3c8838561e5b3b56940..8ca27a63349496e0ecaf9fbf270112e0a3fac457 100644 (file)
 (define (hex2:offset1 o)
   (string-append "!" o))
 
+(define hex? #f) ; We need unreleased messc-tools 0.2 wih 0xXX support for this
+
 (define (hex2:immediate o)
-  (string-append "%0x" (dec->hex o)))
+  (if hex? (string-append "%0x" (dec->hex o))
+      (format #f "%~a" o)))
 
 (define (hex2:immediate1 o)
-  (string-append "!0x" (dec->hex o)))
+  (if hex? (string-append "!0x" (dec->hex o))
+      (format #f "!~a" o)))
 
 (define (object->M1 o)
   (let* ((functions (assoc-ref o 'functions))
         (_ (cond ((char? o) (text->M1 (char->integer o)))
                  ((string? o) (format #f "~a" o))
                  ((number? o) (let ((o (if (< o #x80) o (- o #x100))))
-                                (string-append "!0x"
-                                               (if (and (>= o 0) (< o 16)) "0" "")
-                                               (number->string o 16))))
+                                (if hex? (string-append "!0x"
+                                                        (if (and (>= o 0) (< o 16)) "0" "")
+                                                        (number->string o 16))
+                                    (string-append "!" (number->string o)))))
                  (else (format #f "~a" o))))))
     (define (write-function o)
       (let ((name (car o))