* "make gas-test" broken?
@ 2009-07-25 14:31 Dave Korn
2009-08-18 16:42 ` Doug Evans
0 siblings, 1 reply; 7+ messages in thread
From: Dave Korn @ 2009-07-25 14:31 UTC (permalink / raw)
To: cgen
Hi,
I figured it was something I was doing wrong in my port, but maybe not;
seems to happen for any cpu I try, e.g.:
$ make gas-test ARCHFILE=/gnu/cgen/src/cgen/../cgen/cpu/play.cpu
"`if test -f ../guile/libguile/guile ; then echo ../guile/libguile/guile; else
echo guile ; fi`" -l /gnu/cgen/src/cgen/guile.scm -s
/gnu/cgen/src/cgen/cgen-gas.scm \
-s /gnu/cgen/src/cgen \
-v \
-a /gnu/cgen/src/cgen/../cgen/cpu/play.cpu \
-i "all" \
-m "all" \
-B gas-build.sh \
-E gas-allinsn.exp
Skipping slib/sort, already loaded.
Skipping slib/random, already loaded.
cgen -s /gnu/cgen/src/cgen/cgen-gas.scm -s /gnu/cgen/src/cgen -v -a
/gnu/cgen/src/cgen/../cgen/cpu/play.cpu -i all -m all -B gas-build.sh -E
gas-allinsn.exp
Loading cpu description /gnu/cgen/src/cgen/../cgen/cpu/play.cpu ...
Including file /gnu/cgen/src/cgen/../cgen/cpu/simplify.inc ...
Analyzing instruction set ...
Done analysis.
Generating gas-build.sh ...
ERROR: In procedure string-append:
ERROR: Wrong type (expecting string): fp
No backtrace available.
make: *** [gas-test] Error 1
$ make gas-test ARCHFILE=/gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu
"`if test -f ../guile/libguile/guile ; then echo ../guile/libguile/guile; else
echo guile ; fi`" -l /gnu/cgen/src/cgen/guile.scm -s
/gnu/cgen/src/cgen/cgen-gas.scm \
-s /gnu/cgen/src/cgen \
-v \
-a /gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu \
-i "all" \
-m "all" \
-B gas-build.sh \
-E gas-allinsn.exp
Skipping slib/sort, already loaded.
Skipping slib/random, already loaded.
cgen -s /gnu/cgen/src/cgen/cgen-gas.scm -s /gnu/cgen/src/cgen -v -a
/gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu -i all -m all -B gas-build.sh -E
gas-allinsn.exp
Loading cpu description /gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu ...
Including file /gnu/cgen/src/cgen/../cgen/cpu/simplify.inc ...
Analyzing instruction set ...
Done analysis.
Generating gas-build.sh ...
ERROR: In procedure string-append:
ERROR: Wrong type (expecting string): m68k
No backtrace available.
make: *** [gas-test] Error 1
Hmm, until I saw that "m68k" I thought it was always pseudo-register names,
I've seen "fp" and "lr" before. Anyway, manually invoking the guile command
while adding --debug doesn't help any with the backtrace. I was following the
instructions in 5.7 of the manual; is there a list of interactive commands I
could run (like those in 5.5 and 5.8) manually that might help shed some light
on what's going wrong?
cheers,
DaveK
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: "make gas-test" broken?
2009-07-25 14:31 "make gas-test" broken? Dave Korn
@ 2009-08-18 16:42 ` Doug Evans
2009-08-18 17:44 ` Dave Korn
2009-08-19 3:41 ` Dave Korn
0 siblings, 2 replies; 7+ messages in thread
From: Doug Evans @ 2009-08-18 16:42 UTC (permalink / raw)
To: Dave Korn; +Cc: cgen
Dave Korn wrote:
> Hi,
>
> I figured it was something I was doing wrong in my port, but maybe not;
> seems to happen for any cpu I try, e.g.:
>
>
> $ make gas-test ARCHFILE=/gnu/cgen/src/cgen/../cgen/cpu/play.cpu
> "`if test -f ../guile/libguile/guile ; then echo ../guile/libguile/guile; else
> echo guile ; fi`" -l /gnu/cgen/src/cgen/guile.scm -s
> /gnu/cgen/src/cgen/cgen-gas.scm \
> -s /gnu/cgen/src/cgen \
> -v \
> -a /gnu/cgen/src/cgen/../cgen/cpu/play.cpu \
> -i "all" \
> -m "all" \
> -B gas-build.sh \
> -E gas-allinsn.exp
> Skipping slib/sort, already loaded.
> Skipping slib/random, already loaded.
> cgen -s /gnu/cgen/src/cgen/cgen-gas.scm -s /gnu/cgen/src/cgen -v -a
> /gnu/cgen/src/cgen/../cgen/cpu/play.cpu -i all -m all -B gas-build.sh -E
> gas-allinsn.exp
> Loading cpu description /gnu/cgen/src/cgen/../cgen/cpu/play.cpu ...
> Including file /gnu/cgen/src/cgen/../cgen/cpu/simplify.inc ...
> Analyzing instruction set ...
> Done analysis.
> Generating gas-build.sh ...
> ERROR: In procedure string-append:
> ERROR: Wrong type (expecting string): fp
> No backtrace available.
> make: *** [gas-test] Error 1
>
> $ make gas-test ARCHFILE=/gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu
> "`if test -f ../guile/libguile/guile ; then echo ../guile/libguile/guile; else
> echo guile ; fi`" -l /gnu/cgen/src/cgen/guile.scm -s
> /gnu/cgen/src/cgen/cgen-gas.scm \
> -s /gnu/cgen/src/cgen \
> -v \
> -a /gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu \
> -i "all" \
> -m "all" \
> -B gas-build.sh \
> -E gas-allinsn.exp
> Skipping slib/sort, already loaded.
> Skipping slib/random, already loaded.
> cgen -s /gnu/cgen/src/cgen/cgen-gas.scm -s /gnu/cgen/src/cgen -v -a
> /gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu -i all -m all -B gas-build.sh -E
> gas-allinsn.exp
> Loading cpu description /gnu/cgen/src/cgen/../cgen/cpu/m68k.cpu ...
> Including file /gnu/cgen/src/cgen/../cgen/cpu/simplify.inc ...
> Analyzing instruction set ...
> Done analysis.
> Generating gas-build.sh ...
> ERROR: In procedure string-append:
> ERROR: Wrong type (expecting string): m68k
> No backtrace available.
> make: *** [gas-test] Error 1
>
>
> Hmm, until I saw that "m68k" I thought it was always pseudo-register names,
> I've seen "fp" and "lr" before. Anyway, manually invoking the guile command
> while adding --debug doesn't help any with the backtrace. I was following the
> instructions in 5.7 of the manual; is there a list of interactive commands I
> could run (like those in 5.5 and 5.8) manually that might help shed some light
> on what's going wrong?
>
> cheers,
> DaveK
>
>
Hi. Yeah, it is broken. Bitrot.
I fixed a few issues, and still have a few more to look into.
Does anyone have docs on the m32rx ISA? I can find m32r ISA docs from
the Renesas link on the main webpage, but I need m32rx. The f-accs
field is 2 bits yet there are only 2 h/w accumulators. This should be
flagged at .cpu load time, but it's currently crashing gas-test.
btw, here's how I'm testing gas-test.
bash$ cd src/cgen
bash$ guile
guile> (load "dev.scm")
guile> (load-gtest)
guile> (cload #:arch "../cpu/m32r.cpu") ; replace with path to your cpu
file of course
guile> (cgen-build.sh)
guile> (cgen-all-insn.exp)
That should run without any errors.
Also, to get a backtrace when invoking gas-test from the command line:
bash$ make gas-test CGENFLAGS='-v -b'
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: "make gas-test" broken?
2009-08-18 16:42 ` Doug Evans
@ 2009-08-18 17:44 ` Dave Korn
2009-08-19 3:41 ` Dave Korn
1 sibling, 0 replies; 7+ messages in thread
From: Dave Korn @ 2009-08-18 17:44 UTC (permalink / raw)
To: Doug Evans; +Cc: Dave Korn, cgen
Doug Evans wrote:
> Dave Korn wrote:
>> Hi,
>>
>> I figured it was something I was doing wrong in my port, but maybe not;
>> seems to happen for any cpu I try, e.g.:
> Hi. Yeah, it is broken. Bitrot.
> I fixed a few issues, and still have a few more to look into.
Thanks Doug, I'm updating my repository and I'll see how it looks later tonight.
> btw, here's how I'm testing gas-test.
>
> bash$ cd src/cgen
> bash$ guile
> guile> (load "dev.scm")
> guile> (load-gtest)
> guile> (cload #:arch "../cpu/m32r.cpu") ; replace with path to your cpu
> file of course
> guile> (cgen-build.sh)
> guile> (cgen-all-insn.exp)
>
> That should run without any errors.
Thanks, I'll try that.
> Also, to get a backtrace when invoking gas-test from the command line:
>
> bash$ make gas-test CGENFLAGS='-v -b'
Ooh, ta, that'll come in handy.
cheers,
DaveK
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: "make gas-test" broken?
2009-08-18 16:42 ` Doug Evans
2009-08-18 17:44 ` Dave Korn
@ 2009-08-19 3:41 ` Dave Korn
2009-08-20 17:07 ` Doug Evans
1 sibling, 1 reply; 7+ messages in thread
From: Dave Korn @ 2009-08-19 3:41 UTC (permalink / raw)
To: Doug Evans; +Cc: Dave Korn, cgen
Doug Evans wrote:
> btw, here's how I'm testing gas-test.
>
> bash$ cd src/cgen
> bash$ guile
> guile> (load "dev.scm")
> guile> (load-gtest)
> guile> (cload #:arch "../cpu/m32r.cpu") ; replace with path to your cpu
> file of course
> guile> (cgen-build.sh)
> guile> (cgen-all-insn.exp)
>
> That should run without any errors.
Hmm. Not for me it doesn't: cgen-build.sh give me:
> Backtrace:
> In ./gas-test.scm:
> 57: 0* [list-ref ((a0 0) (a1 1)) {3}]
> 57: 1* [car ...
> 57: 2* [->string ...
> 52: {3}* [string-append "" "" ...
> In unknown file:
> ?: 4* [#<procedure #f (n)> {3}]
> In ./gas-test.scm:
> 51: 5 [map #<procedure #f (n)> (0 {3} 2 1 1 1 2 0)]
> ...
> In ./cos.scm:
> 1106: 6 (if class-desc.meth (apply (cdr class-desc.meth) (cons # args)) ...)
> 1104: 7 (let* ((class-desc.meth #)) (if class-desc.meth (apply # #) ...))
> In ./gas-test.scm:
> 132: 8 [send #(#("object" # h-accums ...) (# #f # ...)) test-data ...]
> In unknown file:
> ?: 9 [#<procedure #f (self n)> #(#("object" # accs ...) (# #f # ...)) 8]
> In ./cos.scm:
> 1107: 10 [apply #<procedure #f (self n)> (#(#("object" # accs ...) (# #f # ...)
> ) 8)]
> 1106: 11 (if class-desc.meth (apply (cdr class-desc.meth) (cons # args)) ...)
> 1104: 12 (let* ((class-desc.meth #)) (if class-desc.meth (apply # #) ...))
> In ./gas-test.scm:
> 140: 13 [send #(#("object" # accs ...) (# #f # ...)) test-data ...]
> 172: 14* [operand-test-data #(#("object" # accs ...) (# #f # ...)) 8]
> In unknown file:
> ?: 15* [#<procedure #f (op)> #(#("object" # accs ...) (# #f # ...))]
> In ./gas-test.scm:
> 172: 16* [map #<procedure #f (op)> (#(# #) #(# #))]
> 172: 17 (let ((test-data #) (len #)) (cond (# #) (else #)))
> 204: 18* [build-test-set (#(# #) #(# #)) 8]
> 202: 19* (let* (# # #) (string-map # test-set))
> 198: 20 [string-append "\x09.text
> " "\x09.global " ... ...
> 285: 21* [gen-gas-test #(#("object" # mvfachi-a "mvfachi-a" ...) (# #f # #f ...
> ))]
> In unknown file:
> ?: 22* [#<procedure #f (insn)> #(#("object" # mvfachi-a ...) (# #f # ...))]
> ?: 23* [map #<procedure #f (insn)> (#(# #) #(# #) #(# #) #(# #) ...)]
> ?: 24 [map]
> In ./utils.scm:
> 100: 25* [apply #<primitive-generic map> (#<procedure #f (insn)> (# # # # ...))
> ]
> 100: 26 [apply #<primitive-procedure string-append> ...
> In ./gas-test.scm:
> 284: 27* [string-map #<procedure #f (insn)> (#(# #) #(# #) #(# #) #(# #) ...)]
> 229: 28 [string-append "#/bin/sh
> # Generate test result data for " m32r ... ...
> In standard input:
> 4: 29* [cgen-build.sh]
>
> ./gas-test.scm:57:29: In procedure list-ref in expression (list-ref test-cases n
> ):
> ./gas-test.scm:57:29: Argument 2 out of range: 3
> ABORT: (out-of-range)
> guile>
And my own target seems to fall at the first hurdle:
> Backtrace:
> In ./gas-test.scm:
> 229: 0 [string-append "#/bin/sh
> # Generate test result data for " ...]
> In standard input:
> 4: 1* [cgen-build.sh]
>
> ./gas-test.scm:229:3: In procedure string-append in expression (string-append "#
> /bin/sh
> # Generate test result data for " (current-arch-name) ...):
> ./gas-test.scm:229:3: Wrong type (expecting string): foobararch
> ABORT: (wrong-type-arg)
> guile>
... where 'foobararch' is the name attribute from my define-arch:
> (define-arch
> (name "foobararch")
> (comment "Example")
> (default-alignment aligned)
> (insn-lsb0? #t)
> (machs foobar24)
> (isas foobarisa)
> )
It doesn't make any difference whether or not I quote 'foobararch' in that
definition.
What can I do next to find out why the m32r regeneration doesn't work for
me? I'm using Guile 1.8.2 (on Cygwin) and I updated cgen from CVS earlier
today; I have no significant local diffs, just this in Makefile.am/in:
-ARCHFILE = $(srcroot)/cpu/$(ARCH).cpu
+ARCHFILE = $(word 1,$(wildcard $(srcroot)/cpu/$(ARCH).cpu
$(srcroot)/cgen/cpu/$(ARCH).cpu))
and this in mode.scm:
(dfm 'HI "16 bit int" '() 'INT 16 2 "int" "'x'" #f #f #f)
+ (dfm 'TQI "24 bit int" '() 'INT 24 3 "int" "'x'" #f #f #f)
(dfm 'SI "32 bit int" '() 'INT 32 4 "int" "'x'" #f #f #f)
(dfm 'DI "64 bit int" '(FN-SUPPORT) 'INT 64 8 "" "'D'" #f #f #f)
@@ -517,6 +518,8 @@ Define a mode, all arguments specified.
8 1 "unsigned int" "'x'" (mode:lookup 'QI) #f #f)
(dfm 'UHI "16 bit unsigned int" '() 'UINT
16 2 "unsigned int" "'x'" (mode:lookup 'HI) #f #f)
+ (dfm 'UTQI "24 bit unsigned int" '() 'UINT
+ 24 3 "unsigned int" "'x'" (mode:lookup 'TQI) #f #f)
... neither of which I'd expect to cause this kind of problem. I guess I'll
try it on a linux vm tomorrow morning and see what happens there.
cheers,
DaveK
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: "make gas-test" broken?
2009-08-19 3:41 ` Dave Korn
@ 2009-08-20 17:07 ` Doug Evans
2009-08-20 17:19 ` Dave Korn
0 siblings, 1 reply; 7+ messages in thread
From: Doug Evans @ 2009-08-20 17:07 UTC (permalink / raw)
To: Dave Korn; +Cc: cgen
Dave Korn wrote:
> Doug Evans wrote:
>
>> btw, here's how I'm testing gas-test.
>>
>> bash$ cd src/cgen
>> bash$ guile
>> guile> (load "dev.scm")
>> guile> (load-gtest)
>> guile> (cload #:arch "../cpu/m32r.cpu") ; replace with path to your cpu
>> file of course
>> guile> (cgen-build.sh)
>> guile> (cgen-all-insn.exp)
>>
>> That should run without any errors.
>>
>
> Hmm. Not for me it doesn't: cgen-build.sh give me:
>
>
>> Backtrace:
>> In ./gas-test.scm:
>> 57: 0* [list-ref ((a0 0) (a1 1)) {3}]
>> 57: 1* [car ...
>> 57: 2* [->string ...
>> 52: {3}* [string-append "" "" ...
>> In unknown file:
>> ?: 4* [#<procedure #f (n)> {3}]
>> In ./gas-test.scm:
>> 51: 5 [map #<procedure #f (n)> (0 {3} 2 1 1 1 2 0)]
>> ...
>> In ./cos.scm:
>> 1106: 6 (if class-desc.meth (apply (cdr class-desc.meth) (cons # args)) ...)
>> 1104: 7 (let* ((class-desc.meth #)) (if class-desc.meth (apply # #) ...))
>> In ./gas-test.scm:
>> 132: 8 [send #(#("object" # h-accums ...) (# #f # ...)) test-data ...]
>> In unknown file:
>> ?: 9 [#<procedure #f (self n)> #(#("object" # accs ...) (# #f # ...)) 8]
>> In ./cos.scm:
>> 1107: 10 [apply #<procedure #f (self n)> (#(#("object" # accs ...) (# #f # ...)
>> ) 8)]
>> 1106: 11 (if class-desc.meth (apply (cdr class-desc.meth) (cons # args)) ...)
>> 1104: 12 (let* ((class-desc.meth #)) (if class-desc.meth (apply # #) ...))
>> In ./gas-test.scm:
>> 140: 13 [send #(#("object" # accs ...) (# #f # ...)) test-data ...]
>> 172: 14* [operand-test-data #(#("object" # accs ...) (# #f # ...)) 8]
>> In unknown file:
>> ?: 15* [#<procedure #f (op)> #(#("object" # accs ...) (# #f # ...))]
>> In ./gas-test.scm:
>> 172: 16* [map #<procedure #f (op)> (#(# #) #(# #))]
>> 172: 17 (let ((test-data #) (len #)) (cond (# #) (else #)))
>> 204: 18* [build-test-set (#(# #) #(# #)) 8]
>> 202: 19* (let* (# # #) (string-map # test-set))
>> 198: 20 [string-append "\x09.text
>> " "\x09.global " ... ...
>> 285: 21* [gen-gas-test #(#("object" # mvfachi-a "mvfachi-a" ...) (# #f # #f ...
>> ))]
>> In unknown file:
>> ?: 22* [#<procedure #f (insn)> #(#("object" # mvfachi-a ...) (# #f # ...))]
>> ?: 23* [map #<procedure #f (insn)> (#(# #) #(# #) #(# #) #(# #) ...)]
>> ?: 24 [map]
>> In ./utils.scm:
>> 100: 25* [apply #<primitive-generic map> (#<procedure #f (insn)> (# # # # ...))
>> ]
>> 100: 26 [apply #<primitive-procedure string-append> ...
>> In ./gas-test.scm:
>> 284: 27* [string-map #<procedure #f (insn)> (#(# #) #(# #) #(# #) #(# #) ...)]
>> 229: 28 [string-append "#/bin/sh
>> # Generate test result data for " m32r ... ...
>> In standard input:
>> 4: 29* [cgen-build.sh]
>>
>> ./gas-test.scm:57:29: In procedure list-ref in expression (list-ref test-cases n
>> ):
>> ./gas-test.scm:57:29: Argument 2 out of range: 3
>> ABORT: (out-of-range)
>> guile>
>>
Ya, that's the problem I was referring to in
http://sourceware.org/ml/cgen/2009-q3/msg00056.html.
I've changed method test-data of class <keyword> to flag a warning and
compensate. It's not ideal, technically wrong, but for right now I
don't mind in this particular case.
>
> And my own target seems to fall at the first hurdle:
>
>
>> Backtrace:
>> In ./gas-test.scm:
>> 229: 0 [string-append "#/bin/sh
>> # Generate test result data for " ...]
>> In standard input:
>> 4: 1* [cgen-build.sh]
>>
>> ./gas-test.scm:229:3: In procedure string-append in expression (string-append "#
>> /bin/sh
>> # Generate test result data for " (current-arch-name) ...):
>> ./gas-test.scm:229:3: Wrong type (expecting string): foobararch
>> ABORT: (wrong-type-arg)
>> guile>
>>
>
> ... where 'foobararch' is the name attribute from my define-arch:
>
>
>> (define-arch
>> (name "foobararch")
>> (comment "Example")
>> (default-alignment aligned)
>> (insn-lsb0? #t)
>> (machs foobar24)
>> (isas foobarisa)
>> )
>>
>
> It doesn't make any difference whether or not I quote 'foobararch' in that
> definition.
>
Ya, this is a change in Guile's behaviour (circa 1.4?). string-append
use to accept symbols, it no longer does.
Most of cgen has been updated, alas gas-test.scm wasn't - I've fixed it,
give it another try.
> What can I do next to find out why the m32r regeneration doesn't work for
> me? I'm using Guile 1.8.2 (on Cygwin) and I updated cgen from CVS earlier
> today; I have no significant local diffs, just this in Makefile.am/in:
>
> -ARCHFILE = $(srcroot)/cpu/$(ARCH).cpu
> +ARCHFILE = $(word 1,$(wildcard $(srcroot)/cpu/$(ARCH).cpu
> $(srcroot)/cgen/cpu/$(ARCH).cpu))
>
> and this in mode.scm:
>
> (dfm 'HI "16 bit int" '() 'INT 16 2 "int" "'x'" #f #f #f)
> + (dfm 'TQI "24 bit int" '() 'INT 24 3 "int" "'x'" #f #f #f)
> (dfm 'SI "32 bit int" '() 'INT 32 4 "int" "'x'" #f #f #f)
> (dfm 'DI "64 bit int" '(FN-SUPPORT) 'INT 64 8 "" "'D'" #f #f #f)
>
> @@ -517,6 +518,8 @@ Define a mode, all arguments specified.
> 8 1 "unsigned int" "'x'" (mode:lookup 'QI) #f #f)
> (dfm 'UHI "16 bit unsigned int" '() 'UINT
> 16 2 "unsigned int" "'x'" (mode:lookup 'HI) #f #f)
> + (dfm 'UTQI "24 bit unsigned int" '() 'UINT
> + 24 3 "unsigned int" "'x'" (mode:lookup 'TQI) #f #f)
>
> ... neither of which I'd expect to cause this kind of problem. I guess I'll
> try it on a linux vm tomorrow morning and see what happens there.
>
> cheers,
> DaveK
>
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: "make gas-test" broken?
2009-08-20 17:07 ` Doug Evans
@ 2009-08-20 17:19 ` Dave Korn
2009-08-20 17:35 ` Doug Evans
0 siblings, 1 reply; 7+ messages in thread
From: Dave Korn @ 2009-08-20 17:19 UTC (permalink / raw)
To: Doug Evans; +Cc: Dave Korn, cgen
Doug Evans wrote:
> Ya, that's the problem I was referring to in
> http://sourceware.org/ml/cgen/2009-q3/msg00056.html.
> I've changed method test-data of class <keyword> to flag a warning and
> compensate. It's not ideal, technically wrong, but for right now I
> don't mind in this particular case.
Ah, gotcha; that's this bit, right?
> + ;; If an ifield has, e.g., 2 bits (values 0,1,2,3) and the keyword
> + ;; only has two values, e.g. (foo 0) (bar 1), then we can get
> + ;; invalid requests, i.e. for ifield values of 2 and 3.
> + ;; It's not clear what to do here, but it seems like this is an
> + ;; error in the description file.
I also have some ifields like that, they're part of the opcode selection and
not all combinations are valid. (I'll test filling them out with dummy
entries before I update my sandbox just to see if that would have made a
difference.)
> Ya, this is a change in Guile's behaviour (circa 1.4?). string-append
> use to accept symbols, it no longer does.
I was just about to ask about guile versions. I've been noticing testsuite
FAILs which could be related - I'll take a closer look at any that remain
after I've updated.
> Most of cgen has been updated, alas gas-test.scm wasn't - I've fixed it,
> give it another try.
Thank you Doug! I'll be back in touch.
cheers,
DaveK
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: "make gas-test" broken?
2009-08-20 17:19 ` Dave Korn
@ 2009-08-20 17:35 ` Doug Evans
0 siblings, 0 replies; 7+ messages in thread
From: Doug Evans @ 2009-08-20 17:35 UTC (permalink / raw)
To: Dave Korn; +Cc: cgen
Dave Korn wrote:
> Doug Evans wrote:
>
>
>> Ya, that's the problem I was referring to in
>> http://sourceware.org/ml/cgen/2009-q3/msg00056.html.
>> I've changed method test-data of class <keyword> to flag a warning and
>> compensate. It's not ideal, technically wrong, but for right now I
>> don't mind in this particular case.
>>
>
> Ah, gotcha; that's this bit, right?
>
>
>> + ;; If an ifield has, e.g., 2 bits (values 0,1,2,3) and the keyword
>> + ;; only has two values, e.g. (foo 0) (bar 1), then we can get
>> + ;; invalid requests, i.e. for ifield values of 2 and 3.
>> + ;; It's not clear what to do here, but it seems like this is an
>> + ;; error in the description file.
>>
Ya, that's it.
>
> I also have some ifields like that, they're part of the opcode selection and
> not all combinations are valid. (I'll test filling them out with dummy
> entries before I update my sandbox just to see if that would have made a
> difference.)
>
Ifields can have assertions to flag invalid values as prohibited.
gas-test should honor them but I think it currently doesn't.
>
>> Ya, this is a change in Guile's behaviour (circa 1.4?). string-append
>> use to accept symbols, it no longer does.
>>
>
> I was just about to ask about guile versions. I've been noticing testsuite
> FAILs which could be related - I'll take a closer look at any that remain
> after I've updated.
>
Today we support Guile 1.6.8 and 1.8.x. I dropped 1.4.x awhile ago.
When to drop 1.6.x is undecided. If you're using 1.8.x I think you're fine.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2009-08-20 17:35 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-07-25 14:31 "make gas-test" broken? Dave Korn
2009-08-18 16:42 ` Doug Evans
2009-08-18 17:44 ` Dave Korn
2009-08-19 3:41 ` Dave Korn
2009-08-20 17:07 ` Doug Evans
2009-08-20 17:19 ` Dave Korn
2009-08-20 17:35 ` Doug Evans
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).