Beispiel #1
0
void X86CpuInit(void) {
  /* Classes */
  CLASS_REGISTER(X86Cpu);
  CLASS_REGISTER(X86Core);
  CLASS_REGISTER(X86Thread);

  /* Trace */
  x86_trace_category = trace_new_category();
}
Beispiel #2
0
void arm_cpu_init(void) {
    /* Classes */
    CLASS_REGISTER(ARMCpu);

    /* Create CPU */
    arm_cpu = new (ARMCpu);
}
Beispiel #3
0
void evg_gpu_init(void)
{
	/* Classes */
	CLASS_REGISTER(EvgGpu);

	/* Trace */
	evg_trace_category = trace_new_category();

	/* Try to open report file */
	if (evg_gpu_report_file_name[0] && !file_can_open_for_write(evg_gpu_report_file_name))
		fatal("%s: cannot open GPU pipeline report file",
			evg_gpu_report_file_name);

	/* Trace */
	evg_trace_header("evg.init version=\"%d.%d\" num_compute_units=%d\n",
		EVG_TRACE_VERSION_MAJOR, EVG_TRACE_VERSION_MINOR,
		evg_gpu_num_compute_units);

	/* Create GPU */
	evg_gpu = new(EvgGpu);

	/* Initializations */
	evg_periodic_report_init();
	evg_uop_init();

	/* GPU-REL: read stack faults file */
	evg_faults_init();
}
Beispiel #4
0
void Kiji_bootstrap_Str(MVMCompUnit* cu, MVMThreadContext*tc) {
  CLASS_INIT();
  CLASS_ADD_METHOD("lc",       Str_lc);
  CLASS_ADD_METHOD("uc",       Str_uc);
  CLASS_ADD_METHOD("length",   Str_length);
  CLASS_ADD_METHOD("say",      Str_say);
  CLASS_REGISTER(cu->hll_config->str_box_type);
}
Beispiel #5
0
void mips_emu_init(void)
{
	/* Classes */
	CLASS_REGISTER(MIPSEmu);

	/* Initialization */
	mips_sys_init();
	mips_asm_init();

	/* Create emulator */
	mips_emu = new(MIPSEmu);
}
Beispiel #6
0
void arm_emu_init(void)
{
    /* Classes */
    CLASS_REGISTER(ARMEmu);

    /* Initialization */
    arm_sys_init();
    arm_asm = new(ARMAsm);

    /* Create ARM emulator */
    arm_emu = new(ARMEmu);
}
Beispiel #7
0
MVMObject * Kiji_bootstrap_Pair(MVMCompUnit* cu, MVMThreadContext*tc) {
  MVMObject * type = MVM_6model_find_method(
    tc,
    STABLE(tc->instance->KnowHOW)->HOW,
    MVM_string_ascii_decode_nt(tc, tc->instance->VMString, (char*)"new_type")
  );
  MVMObject * how = STABLE(type)->HOW;

  CLASS_INIT();
  /* CLASS_ADD_METHOD("elems",   Hash_elems); */
  CLASS_REGISTER(type);

  return type;
}
Beispiel #8
0
void frm_emu_init(void)
{
    /* Classes */
    CLASS_REGISTER(FrmEmu);

    /* Open report file */
    if (*frm_emu_report_file_name)
    {
        frm_emu_report_file = file_open_for_write(frm_emu_report_file_name);
        if (!frm_emu_report_file)
            fatal("%s: cannot open report for Fermi emulator",
                  frm_emu_report_file_name);
    }

    /* Create emulator */
    frm_emu = new(FrmEmu);

    /* Initialize disassembler (decoding tables...) */
    frm_disasm_init();

    /* Initialize ISA (instruction execution tables...) */
    frm_isa_init();
}
Beispiel #9
0
void Kiji_bootstrap_File(MVMCompUnit* cu, MVMThreadContext*tc) {
  CLASS_INIT();
  CLASS_ADD_METHOD("eof",   File_eof);
  CLASS_REGISTER(tc->instance->boot_types->BOOTIO);
}