// ************************************************************************** //
//                                                                            //
//    eses                   eses                                             //
//   eses                     eses                                            //
//  eses    eseses  esesese    eses   Embedded Systems Group                  //
//  ese    ese  ese ese         ese                                           //
//  ese    eseseses eseseses    ese   Department of Computer Science          //
//  eses   eses          ese   eses                                           //
//   eses   eseses  eseseses  eses    University of Kaiserslautern            //
//    eses                   eses                                             //
//                                                                            //
// ************************************************************************** //
// A module to test the correct transfer of values from surface to depth.     //
// ************************************************************************** //

module T01 (int b) {
    w0: pause;
    loop {
        int x;
        assert(x==0);
        w1: pause;
        b = (x==1 ? 3 : 5);
        assert(x==0 & b==5);
        w2: pause;
        x = 1;
        assert(x==1);
    }
} drivenby {
    for(i=0..7) pause;
}