Lines Matching refs:cd

6089 build_hw_table (CGEN_CPU_TABLE *cd)
6092 int machs = cd->machs;
6100 cd->hw_table.init_entries = init;
6101 cd->hw_table.entry_size = sizeof (CGEN_HW_ENTRY);
6108 cd->hw_table.entries = selected;
6109 cd->hw_table.num_entries = MAX_HW;
6115 build_ifield_table (CGEN_CPU_TABLE *cd)
6117 cd->ifld_table = & mep_cgen_ifld_table[0];
6123 build_operand_table (CGEN_CPU_TABLE *cd)
6126 int machs = cd->machs;
6133 cd->operand_table.init_entries = init;
6134 cd->operand_table.entry_size = sizeof (CGEN_OPERAND);
6141 cd->operand_table.entries = selected;
6142 cd->operand_table.num_entries = MAX_OPERANDS;
6154 build_insn_table (CGEN_CPU_TABLE *cd)
6163 cd->insn_table.init_entries = insns;
6164 cd->insn_table.entry_size = sizeof (CGEN_IBASE);
6165 cd->insn_table.num_init_entries = MAX_INSNS;
6171 mep_cgen_rebuild_tables (CGEN_CPU_TABLE *cd)
6174 CGEN_BITSET *isas = cd->isas;
6175 unsigned int machs = cd->machs;
6177 cd->int_insn_p = CGEN_INT_INSN_P;
6181 cd->default_insn_bitsize = UNSET;
6182 cd->base_insn_bitsize = UNSET;
6183 cd->min_insn_bitsize = 65535; /* Some ridiculously big number. */
6184 cd->max_insn_bitsize = 0;
6192 if (cd->default_insn_bitsize == UNSET)
6193 cd->default_insn_bitsize = isa->default_insn_bitsize;
6194 else if (isa->default_insn_bitsize == cd->default_insn_bitsize)
6197 cd->default_insn_bitsize = CGEN_SIZE_UNKNOWN;
6201 if (cd->base_insn_bitsize == UNSET)
6202 cd->base_insn_bitsize = isa->base_insn_bitsize;
6203 else if (isa->base_insn_bitsize == cd->base_insn_bitsize)
6206 cd->base_insn_bitsize = CGEN_SIZE_UNKNOWN;
6209 if (isa->min_insn_bitsize < cd->min_insn_bitsize)
6210 cd->min_insn_bitsize = isa->min_insn_bitsize;
6211 if (isa->max_insn_bitsize > cd->max_insn_bitsize)
6212 cd->max_insn_bitsize = isa->max_insn_bitsize;
6223 if (cd->insn_chunk_bitsize != 0 && cd->insn_chunk_bitsize != mach->insn_chunk_bitsize)
6229 cd->insn_chunk_bitsize, mach->insn_chunk_bitsize);
6233 cd->insn_chunk_bitsize = mach->insn_chunk_bitsize;
6238 build_hw_table (cd);
6241 build_ifield_table (cd);
6244 build_operand_table (cd);
6247 build_insn_table (cd);
6269 CGEN_CPU_TABLE *cd = (CGEN_CPU_TABLE *) xmalloc (sizeof (CGEN_CPU_TABLE));
6283 memset (cd, 0, sizeof (*cd));
6338 cd->isas = cgen_bitset_copy (isas);
6339 cd->machs = machs;
6340 cd->endian = endian;
6341 cd->insn_endian
6345 cd->rebuild_tables = mep_cgen_rebuild_tables;
6346 mep_cgen_rebuild_tables (cd);
6349 cd->signed_overflow_ok_p = 0;
6351 return (CGEN_CPU_DESC) cd;
6371 mep_cgen_cpu_close (CGEN_CPU_DESC cd)
6376 if (cd->macro_insn_table.init_entries)
6378 insns = cd->macro_insn_table.init_entries;
6379 for (i = 0; i < cd->macro_insn_table.num_init_entries; ++i, ++insns)
6384 if (cd->insn_table.init_entries)
6386 insns = cd->insn_table.init_entries;
6387 for (i = 0; i < cd->insn_table.num_init_entries; ++i, ++insns)
6392 free ((CGEN_INSN *) cd->macro_insn_table.init_entries);
6393 free ((CGEN_INSN *) cd->insn_table.init_entries);
6394 free ((CGEN_HW_ENTRY *) cd->hw_table.entries);
6395 free ((CGEN_HW_ENTRY *) cd->operand_table.entries);
6396 free (cd);