8 #include <orc-test/orctest.h>
13 void test_opcode (OrcStaticOpcode *opcode);
14 void test_opcode_const (OrcStaticOpcode *opcode);
15 void test_opcode_param (OrcStaticOpcode *opcode);
18 main (int argc, char *argv[])
21 OrcOpcodeSet *opcode_set;
26 opcode_set = orc_opcode_set_get ("sys");
28 for(i=0;i<opcode_set->n_opcodes;i++){
29 printf("/* %s %d,%d,%d */\n",
30 opcode_set->opcodes[i].name,
31 opcode_set->opcodes[i].dest_size[0],
32 opcode_set->opcodes[i].src_size[0],
33 opcode_set->opcodes[i].src_size[1]);
34 test_opcode (opcode_set->opcodes + i);
36 for(i=0;i<opcode_set->n_opcodes;i++){
37 printf("/* %s const %d,%d,%d */\n",
38 opcode_set->opcodes[i].name,
39 opcode_set->opcodes[i].dest_size[0],
40 opcode_set->opcodes[i].src_size[0],
41 opcode_set->opcodes[i].src_size[1]);
42 test_opcode_const (opcode_set->opcodes + i);
44 for(i=0;i<opcode_set->n_opcodes;i++){
45 printf("/* %s param %d,%d,%d */\n",
46 opcode_set->opcodes[i].name,
47 opcode_set->opcodes[i].dest_size[0],
48 opcode_set->opcodes[i].src_size[0],
49 opcode_set->opcodes[i].src_size[1]);
50 test_opcode_param (opcode_set->opcodes + i);
58 test_opcode (OrcStaticOpcode *opcode)
63 p = orc_test_get_program_for_opcode (opcode);
66 ret = orc_test_gcc_compile (p);
67 if (ret == ORC_TEST_FAILED) {
68 printf("%s", orc_program_get_asm_code (p));
77 test_opcode_const (OrcStaticOpcode *opcode)
82 p = orc_test_get_program_for_opcode_const (opcode);
85 ret = orc_test_gcc_compile (p);
86 if (ret == ORC_TEST_FAILED) {
87 printf("%s", orc_program_get_asm_code (p));
96 test_opcode_param (OrcStaticOpcode *opcode)
101 p = orc_test_get_program_for_opcode_param (opcode);
104 ret = orc_test_gcc_compile (p);
105 if (ret == ORC_TEST_FAILED) {
106 printf("%s", orc_program_get_asm_code (p));
111 orc_program_free (p);