diff options
author | John van Groningen | 2004-06-11 11:13:37 +0000 |
---|---|---|
committer | John van Groningen | 2004-06-11 11:13:37 +0000 |
commit | 473d9b43cb6270def3da8c0dbf4986ab64e0325a (patch) | |
tree | 340d101d4e8c649c8a5b2ae9eeedec78bff4dc5a /cglin.c | |
parent | optimize code generation for x+c,c+x,x-c and c-x array indices (diff) |
improve code generation for xor on processors other than the M68000
Diffstat (limited to 'cglin.c')
-rw-r--r-- | cglin.c | 6 |
1 files changed, 6 insertions, 0 deletions
@@ -2909,6 +2909,7 @@ static void linearize_dyadic_commutative_data_operator (int i_instruction_code,I register_node (graph,reg_1); } +#ifdef M68000 static void linearize_eor_operator (INSTRUCTION_GRAPH graph,ADDRESS *ad_p) { register INSTRUCTION_GRAPH graph_1,graph_2; @@ -2949,6 +2950,7 @@ static void linearize_eor_operator (INSTRUCTION_GRAPH graph,ADDRESS *ad_p) if (*ad_p->ad_count_p>1) register_node (graph,reg_1); } +#endif static int compare_node (INSTRUCTION_GRAPH graph,int i_test_1,int i_test_2) { @@ -7499,7 +7501,11 @@ static void linearize_graph (INSTRUCTION_GRAPH graph,ADDRESS *ad_p) linearize_dyadic_commutative_data_operator (IOR,graph,ad_p); return; case GEOR: +#ifdef M68000 linearize_eor_operator (graph,ad_p); +#else + linearize_dyadic_commutative_data_operator (IEOR,graph,ad_p); +#endif return; case GSUB: linearize_dyadic_non_commutative_operator (ISUB,graph,ad_p); |