⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_sc_im.cpp

📁 H.264完整的C语言代码和DCT的代码
💻 CPP
字号:
#include "idb_streamc.hpp"
#include "test_kc.hpp"
// this defines the function "testProgram"
// as a stream program
STREAMPROG(testProgram);
// this stream program is a simple example
// that calls the addAndSum kernel twice
// all stream programs must have only these arguments
#include "sc_dispatcher_int.hpp"
char* __opsData_testProgram[];



//************************************************************
void streamLoadBin_8(StreamDispatcherInterface& __dis, void*& __i0_ptr, unsigned int& __i0_len, IdbStreamRaw& __i0_out1c)
//************************************************************
{

 // --- BLOCK 8 0x00E430C8 ---
 // --- succ: 9 ---
 IdbStreamRaw& out1 = __i0_out1c;
 __streamLoadBinStart(__i0_len, out1);
 unsigned __int32* ptr_uint32 = ((unsigned __int32*) __i0_ptr);
  /*__streamLoadBinCore(ptr_uint32, __i0_len, out1)*/
 __dis.sendOp(0);
 __dis.updateAndSendHostReceive(1, ptr_uint32, __i0_len);
 __dis.waitForCompleteOp(1);
}


//************************************************************
void streamLoadUCode_2(StreamDispatcherInterface& __dis, char*& __i4_file, unsigned int& __i4_len)
//************************************************************
{

 // --- BLOCK 2 0x00D4BEB8 ---
 // --- succ: -1 ---
 unsigned __int32* ptr = 0;
 bool __t409 = __streamLoadUCodeStart(__i4_file, ptr, ((int) __i4_len));
 bool __t410 = (__t409 != 0);

 if (__t410) {
  // --- BLOCK 3 0x00E2FBF8 ---
  // --- succ: -1 ---
  int __t411 = __dis.getImagine();
  unsigned int tempImIdx = ((unsigned int) __t411);

  {
   // --- BLOCK 4 0x00E2EDF0 ---
   // --- succ: -1 ---
   int p = 0;
   int __t412 = __dis.getNumImagines();
   bool __t413 = (p < __t412);

   {
    // --- BLOCK 5 0x00E2F500 ---
    // --- succ: -1 ---
    //------------------------------------------------------------
    // peeled first: 0
    //------------------------------------------------------------

    if (__t413) {
     // --- BLOCK 6 0x00DA5940 ---
     // --- succ: -1 ---
     __dis.setImagine(p);
     im_stream < im_uint > out1(((int) __i4_len), 0);

     {
      // --- BLOCK 7 0x00DA5E80 ---
      // --- succ: -1 ---
      void* __i0_ptr = ((void*) ptr);
      unsigned int __i0_len = __i4_len;
      IdbStreamRaw& __i0_out1c = out1;
      //------------------------------------------------------------
      // inlined: streamLoadBin
      //------------------------------------------------------------
      streamLoadBin_8(__dis, __i0_ptr, __i0_len, __i0_out1c);

      // --- BLOCK 9 0x00E39E08 ---
      // --- succ: 10 ---
     }

     // --- BLOCK 10 0x00E39EF8 ---
     // --- succ: 11 ---
     /* call: ~im_stream < im_uint > */;
     int __t414 = (p+1);
     (p = __t414);
     int __t412 = __dis.getNumImagines();
     (__t413 = (p < __t412));
    }

    // --- BLOCK 11 0x00E44ED0 ---
    // --- succ: -1 ---

    // --- BLOCK 17 0x00DD7AC0 ---
    // --- succ: -1 ---

    // --- BLOCK 23 0x009448C0 ---
    // --- succ: -1 ---

    // --- BLOCK 29 0x00D62710 ---
    // --- succ: 30 ---
   }

   // --- BLOCK 30 0x00D62800 ---
   // --- succ: 31 ---
  }

  // --- BLOCK 31 0x00D628C8 ---
  // --- succ: 32 ---
  __dis.setImagine(((int) tempImIdx));
  __streamLoadEnd(ptr);
 }

 // --- BLOCK 32 0x00E0B4A8 ---
 // --- succ: 33 ---
}


//************************************************************
void streamLoadBin_41(StreamDispatcherInterface& __dis, void*& __i5_ptr, unsigned int& __i5_len, IdbStreamRaw& __i5_out1c)
//************************************************************
{

 // --- BLOCK 41 0x00C970A8 ---
 // --- succ: 42 ---
 IdbStreamRaw& out1 = __i5_out1c;
 __streamLoadBinStart(__i5_len, out1);
 unsigned __int32* ptr_uint32 = ((unsigned __int32*) __i5_ptr);
  /*__streamLoadBinCore(ptr_uint32, __i5_len, out1)*/
 __dis.sendOp(2);
 __dis.updateAndSendHostReceive(3, ptr_uint32, __i5_len);
 __dis.waitForCompleteOp(3);
}


//************************************************************
void streamSaveBin_45(StreamDispatcherInterface& __dis, void*& __i6_ptr, IdbStreamRaw& __i6_in1c)
//************************************************************
{

 // --- BLOCK 45 0x00D86F68 ---
 // --- succ: 46 ---
 IdbStreamRaw& in1 = __i6_in1c;
 unsigned __int32* ptr_uint32 = ((unsigned __int32*) __i6_ptr);
  /*__streamSaveBinCore(ptr_uint32, in1)*/
 __dis.updateAndSendHostSend(14, ptr_uint32, in1);
 __dis.waitForCompleteOp(14);
}



void /* streamprog */  testProgram(StreamDispatcherInterface& __dis, String args)
{

 // --- BLOCK 0 0x00A849F8 ---
 // --- succ: -1 ---
 static int __opsIdx = -1;
 __dis.loadOps(__streamProg_testProgram, 15, __opsData_testProgram, 1, 1);

 {
  // --- BLOCK 1 0x00E005C8 ---
  // --- succ: -1 ---
  char* __i4_file = "test_kc.raw";
  unsigned int __i4_len = 432;
  //------------------------------------------------------------
  // inlined: streamLoadUCode
  //------------------------------------------------------------
  streamLoadUCode_2(__dis, __i4_file, __i4_len);

  // --- BLOCK 33 0x00C97520 ---
  // --- succ: 34 ---
 }

 // --- BLOCK 34 0x0094D490 ---
 // --- succ: -1 ---
 ostream& __t0 = operator<<((*((ostream*) (&cout))), args);
 __t0.operator<<(endl);
 im_stream < im_int > s1(32, 0);
 im_stream < im_int > s2(32, 0);
 int data[32] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};

 {
  // --- BLOCK 35 0x00A7C818 ---
  // --- succ: 36 ---
  int i = 0;
  bool __t1 = (i < 32);

  // --- BLOCK 36 0x00DD35A8 ---
  // --- succ: -1 ---

  while (__t1) 
  {

   // --- BLOCK 37 0x00A7DC08 ---
   // --- succ: 36 ---
   int __t2 = (4*i);
   ((*((int*)(((char*)data) + __t2))) = i);
   int __t3 = (i+1);
   (i = __t3);
   (__t1 = (i < 32));
  }

  // --- BLOCK 38 0x00E0B2E8 ---
  // --- succ: 39 ---
 }

 // --- BLOCK 39 0x00D91758 ---
 // --- succ: -1 ---

 {
  // --- BLOCK 40 0x00E00690 ---
  // --- succ: -1 ---
  void* __i5_ptr = ((void*) data);
  unsigned int __i5_len = 32;
  IdbStreamRaw& __i5_out1c = s1;
  //------------------------------------------------------------
  // inlined: streamLoadBin
  //------------------------------------------------------------
  streamLoadBin_41(__dis, __i5_ptr, __i5_len, __i5_out1c);

  // --- BLOCK 42 0x00D91A60 ---
  // --- succ: 43 ---
 }

 // --- BLOCK 43 0x00D91910 ---
 // --- succ: -1 ---
 im_uc < im_int > uc_sum(0);
 im_stream < im_int > temp(32, 0);
  /*addAndSum((s1), (s1), (temp), uc_sum)*/
 __dis.sendOp(4);
 __dis.sendOp(5);
 __dis.sendOp(6);
 __dis.updateAndSendUCWrite(7, ( (im_uc_raw*)&uc_sum )->uc_val.clust_vals[0]);
 __dis.sendOp(8);
 __dis.updateAndSendUCRead(9, (im_uc_raw*)&uc_sum);
;
  /*addAndSum((s1), (temp), (s2), uc_sum)*/
 __dis.sendOp(10);
 __dis.updateAndSendUCWrite(11, ( (im_uc_raw*)&uc_sum )->uc_val.clust_vals[0]);
 __dis.sendOp(12);
 __dis.updateAndSendUCRead(13, (im_uc_raw*)&uc_sum);
;

 {
  // --- BLOCK 44 0x00D4BFF8 ---
  // --- succ: -1 ---
  void* __i6_ptr = ((void*) data);
  IdbStreamRaw& __i6_in1c = s2;
  //------------------------------------------------------------
  // inlined: streamSaveBin
  //------------------------------------------------------------
  streamSaveBin_45(__dis, __i6_ptr, __i6_in1c);

  // --- BLOCK 46 0x00D91E98 ---
  // --- succ: 47 ---
 }

 // --- BLOCK 47 0x00D91C58 ---
 // --- succ: -1 ---

 {
  // --- BLOCK 48 0x00A81C90 ---
  // --- succ: 49 ---
  int i__scp15 = 0;
  bool __t4 = (i__scp15 < 32);

  // --- BLOCK 49 0x00C97330 ---
  // --- succ: -1 ---

  while (__t4) 
  {

   // --- BLOCK 50 0x00A82B98 ---
   // --- succ: 49 ---
   int __t5 = (4*i__scp15);
   ostream& __t6 = (*((ostream*) (&cout))).operator<<((*((int*)(((char*)data) + __t5))));
   __t6.operator<<(   (char*) " ");
   int __t7 = (i__scp15+1);
   (i__scp15 = __t7);
   (__t4 = (i__scp15 < 32));
  }

  // --- BLOCK 51 0x00C97458 ---
  // --- succ: 52 ---
 }

 // --- BLOCK 52 0x00D92038 ---
 // --- succ: 53 ---
 (*((ostream*) (&cout))).operator<<(endl);
 ostream& __t8 = (*((ostream*) (&cout))).operator<<( (char*) "sum = ");
 int __t9 = ucRead(uc_sum);
 ostream& __t10 = __t8.operator<<(__t9);
 __t10.operator<<(endl);
 /* call: ~im_stream < im_int > */;
 /* call: ~im_uc < im_int > */;
 /* call: ~im_stream < im_int > */;
 /* call: ~im_stream < im_int > */;

 // --- BLOCK 53 0x00D4F838 ---
 // --- succ: -1 ---
}


char* __opsData_testProgram[] = {
  "0 1 0 0 0 0 32 0 0 32 1 0 1 10 4294967295 0  1 5 0  0 432 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 0 32 0 32 0 -1 32 0 32 0 32 0 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 15 addAndSum ucode ",
  "1 7 1 0 0 1 32 0 0 32 3 0 6 10 4294967295 0  10 4294967295 0  -1 -1 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 1 5 -1 0 -1 -1 0  1 5 1 0 0 1 32 1 32 0 -1 32 0 32 0 32 1 32 0 32 0 32 0 0 432 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 15 addAndSum ucode ",
  "2 1 2 0 0 0 32 0 0 32 4 0 1 10 4294967295 0  1 1 0  14 32 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 2 32 0 32 0 -1 32 0 32 0 32 0 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 2 s1 ",
  "3 7 3 448 0 1 32 0 0 32 12 0 6 10 4294967295 0  10 4294967295 0  -1 -1 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 1 5 -1 0 -1 -1 0  1 1 1 0 0 3 32 4 32 0 -1 32 0 32 0 32 4 32 0 32 0 32 0 0 32 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 2 s1 ",
  "4 1 4 0 0 0 32 0 0 32 16 0 1 10 4294967295 0  1 4 0  0 432 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 4 32 0 32 0 -1 32 0 32 0 32 0 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 15 addAndSum ucode ",
  "5 8 5 0 0 0 32 0 0 32 50 0 4 10 4294967295 0  10 4294967295 0  -1 -1 3 0 0 10 test_kc.uc 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 4 5 -1 0 -1 -1 27 Loading kernel : test_kc.uc 1 4 2 2 0 5 32 18 32 0 -1 32 0 32 0 32 18 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "6 1 6 0 0 0 32 0 0 32 64 0 1 10 4294967295 0  1 2 0  15 32 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 6 32 0 32 0 -1 32 0 32 0 32 0 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 4 temp ",
  "7 1 7 0 0 0 32 0 0 32 128 0 1 10 4294967295 0  6 1 0  0 0 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 7 32 0 32 0 -1 32 0 32 0 32 0 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "8 9 8 0 0 0 32 0 0 32 492 0 4 10 4294967295 0  10 4294967295 0  -1 -1 1 0 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  8 1 2 0 0 1 2 0 0 2 1 0 0 -1 0 2 0 -1 0 2 0 -1 0 2 0 -1 0 2 0 -1 0 2 0 8 32 236 32 0 -1 32 0 32 0 32 236 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "9 2 9 0 0 0 32 0 0 32 896 0 2 6 1 0  8 9 0  -1 -1 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 4 5 -1 0 -1 -1 17 ( reg --> sctrf ) 0 9 32 384 32 0 -1 32 0 32 0 32 384 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "10 1 10 0 0 0 32 0 0 32 1024 0 1 10 4294967295 0  1 3 0  16 32 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 10 32 0 32 0 -1 32 0 32 0 32 0 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 2 s2 ",
  "11 1 11 0 0 0 32 0 0 32 2944 0 1 10 4294967295 0  6 1 0  0 0 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 4294967295 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  0 11 32 896 32 0 -1 32 0 32 0 32 896 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "12 9 12 0 0 0 32 0 0 32 8172 0 4 10 4294967295 0  10 4294967295 0  -1 -1 1 0 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 4 5 -1 0 -1 -1 0  8 1 2 0 0 2 2 0 0 3 1 0 0 -1 0 2 0 -1 0 2 0 -1 0 2 0 -1 0 2 0 -1 0 2 0 12 32 4076 32 0 -1 32 0 32 0 32 4076 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "13 2 13 0 0 0 32 0 0 32 15232 0 2 6 1 0  8 13 0  -1 -1 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 4 5 -1 0 -1 -1 17 ( reg --> sctrf ) 0 13 32 7040 32 0 -1 32 0 32 0 32 7040 32 0 32 0 32 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 9 addAndSum ",
  "14 6 14 512 0 1 32 0 0 32 21504 0 6 10 4294967295 0  10 4294967295 0  -1 -1 5 -1 0 7 invalid 0 1 6 0 -1 -1 0 0 -1 0 4 0 25 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 -1 1 2 5 -1 0 -1 -1 0  1 3 2 0 0 14 32 5120 32 0 -1 32 0 32 0 32 5120 32 0 32 0 32 0 0 32 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 -1 -1 -1 -1 -1 2 s2 "
};


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -