chiark / gitweb /
list flags affected
authorian <ian>
Sun, 24 Apr 2005 13:44:16 +0000 (13:44 +0000)
committerian <ian>
Sun, 24 Apr 2005 13:44:16 +0000 (13:44 +0000)
iwjpictest/Makefile
iwjpictest/insn-aliases.inc-gen

index 07a608ddd5e0e41a5908233702750bbb064aed5f..874cfd4a111238d4ca69bb037502a20a838f16a9 100644 (file)
@@ -21,7 +21,7 @@ insn-%.txt:   insn-aliases.inc-gen
 insn-check.txt:        insn-makecheck insn-aliases.inc
                ./$^ $o
 
-insn-%.ps:     insn-%.txt
-               atp -T A4 -B -f Courier7.8 <$< $o
+insn-%.ps:     insn-%.txt Makefile
+               atp -T A4 -B -f Courier7.7 <$< $o
 
 copybits.o serialloop.o:       onecopybit.inc
index 65dd1c6951208918287f36ea721d4d3ce075bbe3..246f8deb0a804f53372b78eee780d0911d971431 100755 (executable)
@@ -15,6 +15,33 @@ case "$1" in
 esac
 test $# = 1 || badusage
 
+flags () { eval "flags_$1=$2"; }
+
+flags  addwf   F
+flags  addwfc  F
+flags  andwf   ZN
+flags  clrf    Z
+flags  comf    ZN
+flags  decf    F
+flags  incf    F
+flags  iorwf   ZN
+flags  movf    ZN
+flags  negf    F
+flags  rlcf    ZNC
+flags  rlncf   ZN
+flags  rrcf    ZNC
+flags  rrncf   ZN
+flags  subfwb  F
+flags  subwf   F
+flags  subwfb  F
+flags  xorwf   ZN
+flags  daw     C
+flags  addlw   F
+flags  andlw   ZN
+flags  iorlw   ZN
+flags  sublw   F
+flags  xorlw   ZN
+
 if [ x$cohere != x ]; then
        sed <$0 -e '1,/^#'$cohere'--/d; /^#--0--/,$d'
        "$0" --descs | sort -t % -k 1.$sortkey
@@ -29,7 +56,8 @@ lit=k
 
 desc () {
        local use=$1 new=$2 formargs=$3 notes=$4
-       local fan="$(printf "%-6s %s" "$formargs" "$notes")"
+       eval "flags__use=\$flags_$use"
+       local fan="$(printf "%-6s %s" "$formargs" "$flags__use$notes")"
        if $descs; then
                printf "$comment %-13s %-12s %-39s %s\n" \
                        "$new" "$fan" "$ds" "$use"
@@ -193,7 +221,9 @@ Notes:  r  Branch uses relative offset.
         a  Uses BSR for F iff F address is not in Access Bank.  There are
            also <op>_<how>a (always uses access bank) and <op>_<how>b
            (always uses BSR).  (<op>_<how>[ab]_if<what> for conditionals.)
-        u  Official opcode, not an alias/macro.  Listed for completeness.
-    digits Gives number of bits of address or offset.
+        u  Official opcode, not an alias/macro.  Listed for completeness.y
+       w  Macro (alias) using WREG (the mapping of W in the Access Bank).
+   digits  Gives number of bits of address or offset.
+  Z N C F  Flags affected.  F: all the status flags C DC Z OV N affected.
 $Id$
 #--0--