instrrules.c
// Add combinations for different storages (constant, register, memory) of SSE operands
Add combinations for different storages (constant, register, memory) of SSE operands
Add combinations for different storages ( constant register memory ) of SSE operands
static void add_sse_operation_combination_rules(int operation, int x86_operation, int cost, int type, char *mov_template, char *op_template) {
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, RS3 + type, RS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, RS3 + type, CS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, CS3 + type, RS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, MS3 + type, MS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, MS3 + type, CS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, CS3 + type, MS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, MS3 + type, RS3 + type, mov_template, op_template);
    add_sse_operation_rule(operation, x86_operation, cost, RS3 + type, RS3 + type, MS3 + type, mov_template, op_template);
}
static void add_sse_operation_combination_rules ( int operation , int x86_operation , int cost , int type , char * mov_template , char * op_template ) { add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , RS3 + type , RS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , RS3 + type , CS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , CS3 + type , RS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , MS3 + type , MS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , MS3 + type , CS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , CS3 + type , MS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , MS3 + type , RS3 + type , mov_template , op_template ) ; add_sse_operation_rule ( operation , x86_operation , cost , RS3 + type , RS3 + type , MS3 + type , mov_template , op_template ) ; }
Add combinations for different storages (constant, register, memory) of SSE operands
Add combinations for different storages ( constant register memory ) of SSE operands