add source code that does not have location annotations.
[IRC.git] / Robust / src / Benchmarks / SSJava / MP3Decoder / LayerIIIDecoder.java
index af6ac25cb4a1524e49899aabaf69f593f9c12c83..a5546321ece1b529c4a4a9b7f8251cc2eb6cd601 100644 (file)
@@ -485,6 +485,9 @@ final class LayerIIIDecoder implements FrameDecoder {
     SSJAVA.arrayinit(scalefac_buffer, 0);
     SSJAVA.arrayinit(nonzero, 576);
     SSJAVA.arrayinit(new_slen, 0);
+
+    SSJAVA.arrayinit(raw_full, 2, SBLIMIT * SSLIMIT, 0);
+    SSJAVA.arrayinit(rawout, 0);
     CheckSumHuff = 0;
     // prevblck = new float[2][SBLIMIT * SSLIMIT];
     si = new III_side_info_t();
@@ -512,15 +515,11 @@ final class LayerIIIDecoder implements FrameDecoder {
     @LOC("THIS,LayerIIIDecoder.HD1") int version = header.version();
 
     // additional codes for the definitely written property
-    filter_pos = (filter_pos + 4) & 0xf;
+    filter_pos = (header.getIdx() * 4) & 0xf;
     filter1.vidx = 1;
     filter2.vidx = 1;
     filter1.actual_write_pos = filter_pos;
     filter2.actual_write_pos = filter_pos;
-    //
-
-    // System.out.println("filter1="+filter1.vidx+" "+filter1.actual_write_pos);
-    // System.out.println("filter1="+filter2.vidx+" "+filter2.actual_write_pos);
 
     // here 'gr' and 'max_gr' should be higher than 'ch','channels', and more
     for (gr = 0; gr < max_gr; gr++) { // two granules per channel
@@ -622,10 +621,12 @@ final class LayerIIIDecoder implements FrameDecoder {
       } // channels
 
       // TODO
-      // init prev
-      SSJAVA.arrayinit(prevblck, 2, SBLIMIT * SSLIMIT, 0);
-      // copy from raw_full to prev
-      SSJAVA.arraycopy(prevblck, raw_full, 2, SBLIMIT * SSLIMIT);
+      if (gr < max_gr - 1) {
+        // init prev
+        SSJAVA.arrayinit(prevblck, 2, SBLIMIT * SSLIMIT, 0);
+        // copy from raw_full to prev
+        SSJAVA.arraycopy(prevblck, raw_full, 2, SBLIMIT * SSLIMIT);
+      }
       // for (int chidx = 0; chidx < 2; chidx++) {
       // for (int sidx = 0; sidx < SBLIMIT * SSLIMIT; sidx++) {
       // prevblck[chidx][sidx] = raw_full[chidx][sidx];
@@ -635,6 +636,12 @@ final class LayerIIIDecoder implements FrameDecoder {
       // filter1.actual_write_pos);
     } // granule
 
+    // TODO
+    // init prev
+    SSJAVA.arrayinit(prevblck, 2, SBLIMIT * SSLIMIT, 0);
+    // copy from raw_full to prev
+    SSJAVA.arraycopy(prevblck, raw_full, 2, SBLIMIT * SSLIMIT);
+
     // System.out.println("#END FRAME actual_write_pos=" +
     // filter1.actual_write_pos);
 
@@ -644,7 +651,7 @@ final class LayerIIIDecoder implements FrameDecoder {
     // System.out.println("Counter = ................................."+counter);
     // if (counter < 609)
     // {
-    counter++; // count should be loc*
+    // counter++; // count should be loc*
     // buffer.write_buffer(1); // buffer!!!
     // }
     // else if (counter == 609)
@@ -665,7 +672,7 @@ final class LayerIIIDecoder implements FrameDecoder {
   @LATTICE("OUT<THIS,THIS<C,C<IN,C*,THISLOC=THIS,RETURNLOC=OUT")
   private boolean get_side_info(@LOC("THIS,LayerIIIDecoder.HD1") Header header) {
 
-    @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.TEMP") SideInfoBuffer sib =
+    @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.TEMP") SideInfoBuffer sib =
         header.getSideInfoBuffer();
     @LOC("THIS,LayerIIIDecoder.SF1") int version = header.version();
 
@@ -697,8 +704,7 @@ final class LayerIIIDecoder implements FrameDecoder {
           si.ch[ch].gr[gr].big_values = sib.get_bits(9);
           si.ch[ch].gr[gr].global_gain = sib.get_bits(8);
           si.ch[ch].gr[gr].scalefac_compress = sib.get_bits(4);
-          @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.TEMP") int cond =
-              sib.get_bits(1);
+          @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.TEMP") int cond = sib.get_bits(1);
           // si.ch[ch].gr[gr].window_switching_flag = sib.get_bits(1);
           // if ((si.ch[ch].gr[gr].window_switching_flag) != 0) {
           if (cond != 0) {
@@ -756,8 +762,7 @@ final class LayerIIIDecoder implements FrameDecoder {
         si.ch[ch].gr[0].global_gain = sib.get_bits(8);
         si.ch[ch].gr[0].scalefac_compress = sib.get_bits(9);
 
-        @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.TEMP") int cond =
-            sib.get_bits(1);
+        @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.TEMP") int cond = sib.get_bits(1);
         // si.ch[ch].gr[0].window_switching_flag = sib.get_bits(1);
         // if ((si.ch[ch].gr[0].window_switching_flag) != 0) {
         if (cond != 0) {
@@ -928,13 +933,13 @@ final class LayerIIIDecoder implements FrameDecoder {
     // @LOC("THIS,LayerIIIDecoder.GLSFD1") gr_info_s gr_info =
     // (si.ch[ch].gr[gr]); // remove alias
 
-    @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.CH,LayerIIIDecoder$temporaire.GR,LayerIIIDecoder$gr_info_s.V") int scalefac_comp =
+    @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.CH,temporaire.GR,gr_info_s.V") int scalefac_comp =
         si.ch[ch].gr[gr].scalefac_compress;
     @LOC("THIS,LayerIIIDecoder.NS") int blocktypenumber;
 
-    @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.CH,LayerIIIDecoder$temporaire.GR,LayerIIIDecoder$gr_info_s.V") int int_scalefac_comp;
+    @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.CH,temporaire.GR,gr_info_s.V") int int_scalefac_comp;
     @LOC("THIS,LayerIIIDecoder.SFB_SH") int m;
-    @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.CH,LayerIIIDecoder$temporaire.GR,LayerIIIDecoder$gr_info_s.V") int blocknumber =
+    @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.CH,temporaire.GR,gr_info_s.V") int blocknumber =
         0;
 
     if (si.ch[ch].gr[gr].block_type == 2) {
@@ -1801,11 +1806,11 @@ final class LayerIIIDecoder implements FrameDecoder {
   private void antialias(@LOC("THIS,LayerIIIDecoder.SI") int ch,
       @LOC("THIS,LayerIIIDecoder.SI") int gr) {
 
-    @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.CH,LayerIIIDecoder$temporaire.GR2") int sb18;
+    @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.CH,temporaire.GR2") int sb18;
     @LOC("THIS,LayerIIIDecoder.SI1") int ss;
-    @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.CH,LayerIIIDecoder$temporaire.GR2") int sb18lim;
+    @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.CH,temporaire.GR2") int sb18lim;
 
-    // @LOC("THIS,LayerIIIDecoder.SI,LayerIIIDecoder$III_side_info_t.CH,LayerIIIDecoder$temporaire.GR1")
+    // @LOC("THIS,LayerIIIDecoder.SI,III_side_info_t.CH,temporaire.GR1")
     // gr_info_s gr_info =
     // (si.ch[ch].gr[gr]);
     // 31 alias-reduction operations between each pair of sub-bands
@@ -2388,135 +2393,6 @@ final class LayerIIIDecoder implements FrameDecoder {
   // This may be adjusted for performance without any problems.
   // public static final int POW_TABLE_LIMIT=512;
 
-  /************************************************************/
-  /* L3TABLE */
-  /************************************************************/
-
-  @LATTICE("N<VAR")
-  static class SBI {
-    @LOC("VAR")
-    public int[] l;
-    @LOC("VAR")
-    public int[] s;
-
-    public SBI() {
-      l = new int[23];
-      s = new int[14];
-    }
-
-    @LATTICE("THIS<IN,THISLOC=THIS")
-    public SBI(@DELEGATE @LOC("IN") int[] thel, @DELEGATE @LOC("IN") int[] thes) {
-      l = thel;
-      s = thes;
-    }
-  }
-
-  @LATTICE("V,V*")
-  static class gr_info_s {
-    @LOC("V")
-    public int part2_3_length = 0;
-    @LOC("V")
-    public int big_values = 0;
-    @LOC("V")
-    public int global_gain = 0;
-    @LOC("V")
-    public int scalefac_compress = 0;
-    @LOC("V")
-    public int window_switching_flag = 0;
-    @LOC("V")
-    public int block_type = 0;
-    @LOC("V")
-    public int mixed_block_flag = 0;
-    @LOC("V")
-    public int[] table_select;
-    @LOC("V")
-    public int[] subblock_gain;
-    @LOC("V")
-    public int region0_count = 0;
-    @LOC("V")
-    public int region1_count = 0;
-    @LOC("V")
-    public int preflag = 0;
-    @LOC("V")
-    public int scalefac_scale = 0;
-    @LOC("V")
-    public int count1table_select = 0;
-
-    /**
-     * Dummy Constructor
-     */
-    public gr_info_s() {
-      table_select = new int[3];
-      subblock_gain = new int[3];
-    }
-  }
-
-  @LATTICE("GR2<GR1,GR1<GR,GR2*")
-  static class temporaire {
-    @LOC("GR")
-    public int[] scfsi;
-    @LOC("GR")
-    public gr_info_s[] gr;
-
-    /**
-     * Dummy Constructor
-     */
-    public temporaire() {
-      scfsi = new int[4];
-      gr = new gr_info_s[2];
-      gr[0] = new gr_info_s();
-      gr[1] = new gr_info_s();
-    }
-  }
-
-  @LATTICE("CH<TEMP,TEMP*")
-  static class III_side_info_t {
-
-    @LOC("CH")
-    public int main_data_begin = 0;
-    @LOC("CH")
-    public int private_bits = 0;
-    @LOC("CH")
-    public temporaire[] ch;
-
-    /**
-     * Dummy Constructor
-     */
-    public III_side_info_t() {
-      ch = new temporaire[2];
-      ch[0] = new temporaire();
-      ch[1] = new temporaire();
-    }
-  }
-
-  @LATTICE("N<VAR")
-  static class temporaire2 {
-    @LOC("VAR")
-    public int[] l; /* [cb] */
-    @LOC("VAR")
-    public int[][] s; /* [window][cb] */
-
-    /**
-     * Dummy Constructor
-     */
-    public temporaire2() {
-      l = new int[23];
-      s = new int[3][13];
-    }
-  }
-
-  // class III_scalefac_t
-  // {
-  // public temporaire2[] tab;
-  // /**
-  // * Dummy Constructor
-  // */
-  // public III_scalefac_t()
-  // {
-  // tab = new temporaire2[2];
-  // }
-  // }
-
   private static final int slen[][] = { { 0, 0, 0, 0, 3, 1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4 },
       { 0, 1, 2, 3, 0, 1, 2, 3, 1, 2, 3, 1, 2, 3, 2, 3 } };
 
@@ -2966,3 +2842,132 @@ final class LayerIIIDecoder implements FrameDecoder {
       { { 8, 8, 5, 0 }, { 15, 12, 9, 0 }, { 6, 18, 9, 0 } } };
 
 }
+
+/************************************************************/
+/* L3TABLE */
+/************************************************************/
+
+@LATTICE("N<VAR")
+class SBI {
+  @LOC("VAR")
+  public int[] l;
+  @LOC("VAR")
+  public int[] s;
+
+  public SBI() {
+    l = new int[23];
+    s = new int[14];
+  }
+
+  @LATTICE("THIS<IN,THISLOC=THIS")
+  public SBI(@DELEGATE @LOC("IN") int[] thel, @DELEGATE @LOC("IN") int[] thes) {
+    l = thel;
+    s = thes;
+  }
+}
+
+@LATTICE("V,V*")
+class gr_info_s {
+  @LOC("V")
+  public int part2_3_length = 0;
+  @LOC("V")
+  public int big_values = 0;
+  @LOC("V")
+  public int global_gain = 0;
+  @LOC("V")
+  public int scalefac_compress = 0;
+  @LOC("V")
+  public int window_switching_flag = 0;
+  @LOC("V")
+  public int block_type = 0;
+  @LOC("V")
+  public int mixed_block_flag = 0;
+  @LOC("V")
+  public int[] table_select;
+  @LOC("V")
+  public int[] subblock_gain;
+  @LOC("V")
+  public int region0_count = 0;
+  @LOC("V")
+  public int region1_count = 0;
+  @LOC("V")
+  public int preflag = 0;
+  @LOC("V")
+  public int scalefac_scale = 0;
+  @LOC("V")
+  public int count1table_select = 0;
+
+  /**
+   * Dummy Constructor
+   */
+  public gr_info_s() {
+    table_select = new int[3];
+    subblock_gain = new int[3];
+  }
+}
+
+@LATTICE("GR2<GR1,GR1<GR,GR2*")
+class temporaire {
+  @LOC("GR")
+  public int[] scfsi;
+  @LOC("GR")
+  public gr_info_s[] gr;
+
+  /**
+   * Dummy Constructor
+   */
+  public temporaire() {
+    scfsi = new int[4];
+    gr = new gr_info_s[2];
+    gr[0] = new gr_info_s();
+    gr[1] = new gr_info_s();
+  }
+}
+
+@LATTICE("CH<TEMP,TEMP*")
+class III_side_info_t {
+
+  @LOC("CH")
+  public int main_data_begin = 0;
+  @LOC("CH")
+  public int private_bits = 0;
+  @LOC("CH")
+  public temporaire[] ch;
+
+  /**
+   * Dummy Constructor
+   */
+  public III_side_info_t() {
+    ch = new temporaire[2];
+    ch[0] = new temporaire();
+    ch[1] = new temporaire();
+  }
+}
+
+@LATTICE("N<VAR")
+class temporaire2 {
+  @LOC("VAR")
+  public int[] l; /* [cb] */
+  @LOC("VAR")
+  public int[][] s; /* [window][cb] */
+
+  /**
+   * Dummy Constructor
+   */
+  public temporaire2() {
+    l = new int[23];
+    s = new int[3][13];
+  }
+}
+
+// class III_scalefac_t
+// {
+// public temporaire2[] tab;
+// /**
+// * Dummy Constructor
+// */
+// public III_scalefac_t()
+// {
+// tab = new temporaire2[2];
+// }
+// }