On Wed, Sep 28, 2011 at 12:18 PM, Kirill Yukhin <kirill.yuk...@gmail.com> wrote: > Hi folks, > I have a question. For DejaGNU we have only one option for each test. > > It may be e.g. either "dg-do" compile or "dg-do run". This is really > not as suitable > > For instance, we cheking some new instructio autogeneration. We have > to do 2 tests: > 1. We have to write some routine which will contain a pattern which > will be generated as desired instruction. And check at runtime if that > was done correctly, comparing to some expected result. We use "dg-do > run here" > 2. Next we have to check that instruction really is auto generated, > so we use "scan-assembler" for that source. > > May question is: am I missed something? Is there an opportunity to > store to tests into single file? If no, why we do not have one?
Add -save-temps via dg-options, then you can use dg-scan-assembler. > Here is reduced example (from gcc.target/i386): > 1. > /* run.c */ > /* { dg-do run } */ > > int > auto_gen_insn(args...) > { > /* Code to auto-gen instruction. */ > return result; > } > > int > check_semantic(args...) > { > /* Code to do the same, but without desired insn. */ > return result > } > > int > main () > { > if( auto_gen_insn(args...) != check_semantic(args...) ) > abort (); > } > > 2. > /* check_gen.c */ > /* { dg-do compile } */ > #include "run.c" > /* { dg-final { scan-assembler-times "insn" 1 } } */ > > -- > Thanks, k >