This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: h8/300 sim tests


Kazu Hirata wrote:
> 
> Hi Michael,
> 
> > I've been working on some tests for the h8/300 simulator, and I've
> > decided they're ready for contribution.  I hope this framework will
> > make it easy for others to add tests (hint hint file i/o cmdline).
> > These are meant to go in a new directory sim/testsuite/sim/h8300.
> 
> I just looked at the patch.  This is great!
> 
> But I am a little concerned about its size, though.  You've written
> this macro.
> 
> +       .macro test_cc_clear
> +       test_carry_clear
> +       test_ovf_clear
> +       test_zero_clear
> +       test_neg_clear
> +               ; leaves H, I, U, and UI untested
> +       .endm
> 
> but I still see a lot of
> 
> +       test_carry_clear        ; H=0 N=0 Z=0 V=0 C=0
> +       test_ovf_clear
> +       test_zero_clear
> +       test_neg_clear

I only use the test_cc_clear when I expect it to always be clear.
When it varies from one test to the next (eg. the neg flag may
be set one time, clear the next time), I spell them all out.


> In and.w.s, or.w.s, and xor.w.s, I see a nest of
> 
> + .if (sim_cpu)                 ; non-zero means h8300h, s, or sx
> 
> which you probably didn't mean.

I did mean it -- but it's short for "if (sim_cpu != 0)", 
which the assembler seems not to like.  Zero happens to 
be the enum value for the plain vanilla h8/300, so this
idiom means "if h8300h or h8300s or h8300sx".


> I think we should have more macros that test that registers have not
> changed like test_gr_a5a5_0_7 and test_gr_a5a5_1_7.

Sure -- feel free to add them!

> Having said all these, maybe we can first commit your patch and then
> work on CVS.  I am willing to help here.

Cool - I will commit it by Monday EOB.

Thanks for your review, Kazu!
Michael


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]