{"ground_truth": ["", "const", "char", "*", "host_detect_local_cpu", "(", "int", "argc", ",", "const", "char", "*", "*", "argv", ")", "{", "const", "char", "*", "cpu", "=", "NULL", ";", "char", "*", "ret", "=", "NULL", ";", "char", "buf", "[", "128", "]", ";", "FILE", "*", "f", ";", "bool", "arch", ";", "if", "(", "argc", "<", "1", ")", "return", "NULL", ";", "arch", "=", "strcmp", "(", "argv", "[", "0", "]", ",", "\"arch\"", ")", "==", "0", ";", "if", "(", "!", "arch", "&&", "strcmp", "(", "argv", "[", "0", "]", ",", "\"tune\"", ")", ")", "return", "NULL", ";", "f", "=", "fopen", "(", "\"/proc/cpuinfo\"", ",", "\"r\"", ")", ";", "if", "(", "f", "==", "NULL", ")", "goto", "fallback_cpu", ";", "while", "(", "fgets", "(", "buf", ",", "sizeof", "(", "buf", ")", ",", "f", ")", "!=", "NULL", ")", "if", "(", "startswith", "(", "buf", ",", "\"cpu model\"", ")", ")", "{", "if", "(", "strstr", "(", "buf", ",", "\"Godson2 V0.2\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2 V0.2\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2E\"", ")", "!=", "NULL", ")", "cpu", "=", "\"loongson2e\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Godson2 V0.3\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2 V0.3\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2F\"", ")", "!=", "NULL", ")", "cpu", "=", "\"loongson2f\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Godson3 V0.5\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-3 V0.5\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-3A\"", ")", "!=", "NULL", ")", "cpu", "=", "\"loongson3a\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"SiByte SB1\"", ")", "!=", "NULL", ")", "cpu", "=", "\"sb1\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"R5000\"", ")", "!=", "NULL", ")", "cpu", "=", "\"r5000\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Octeon II\"", ")", "!=", "NULL", ")", "cpu", "=", "\"octeon2\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Octeon\"", ")", "!=", "NULL", ")", "cpu", "=", "\"octeon\"", ";", "break", ";", "}", "fclose", "(", "f", ")", ";", "fallback_cpu", ":", "ret", "=", "reconcat", "(", "ret", ",", "\" -mnan=2008 \"", ",", "NULL", ")", ";", "if", "(", "cpu", "==", "NULL", ")", "cpu", "=", "(", "const", "char", "*", ")", "getauxval", "(", "AT_BASE_PLATFORM", ")", ";", "if", "(", "cpu", "==", "NULL", ")", "cpu", "=", "_MIPS_ARCH", ";", "if", "(", "cpu", ")", "ret", "=", "reconcat", "(", "ret", ",", "ret", ",", "\"-m\"", ",", "argv", "[", "0", "]", ",", "\"=\"", ",", "cpu", ",", "NULL", ")", ";", "return", "ret", ";", "}", ""], "natrual_language": ["This", "will", "be", "called", "by", "the", "spec", "parser", "in", "gcc.cc", "when", "it", "sees", "a", "%", ":", "local_cpu_detect", "(", "args", ")", "construct", ".", "Currently", "it", "will", "be", "called", "with", "either", "``", "cpu", "''", "or", "``", "tune", "''", "as", "argument", "depending", "on", "if", "-mcpu=native", "or", "-mtune=native", "is", "to", "be", "substituted", ".", "It", "returns", "a", "string", "containing", "new", "command", "line", "parameters", "to", "be", "put", "at", "the", "place", "of", "the", "above", "two", "options", ",", "depending", "on", "what", "CPU", "this", "is", "executed", ".", "E.g", ".", "``", "-mcpu=ultrasparc3", "''", "on", "an", "UltraSPARC", "III", "for", "-mcpu=native", ".", "If", "the", "routine", "ca", "n't", "detect", "a", "known", "processor", ",", "the", "-mcpu", "or", "-mtune", "option", "is", "discarded", ".", "ARGC", "and", "ARGV", "are", "set", "depending", "on", "the", "actual", "arguments", "given", "in", "the", "spec", "."], "TS_V_token": ["mips", "128", "1", "0", "\"arch\"", "0", "0", "\"tune\"", "\"/proc/cpuinfo\"", "\"r\"", "\"cpu model\"", "\"Godson2 V0.2\"", "\"Loongson-2 V0.2\"", "\"Loongson-2E\"", "\"loongson2e\"", "\"Godson2 V0.3\"", "\"Loongson-2 V0.3\"", "\"Loongson-2F\"", "\"loongson2f\"", "\"Godson3 V0.5\"", "\"Loongson-3 V0.5\"", "\"Loongson-3A\"", "\"loongson3a\"", "\"SiByte SB1\"", "\"sb1\"", "\"R5000\"", "\"r5000\"", "\"Octeon II\"", "\"octeon2\"", "\"Octeon\"", "\"octeon\"", "\" -mnan=2008 \"", "\"-m\"", "0", "\"=\""], "File": "driver-native1", "Func": "host_detect_local_cpu", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32453, "Length": 370} {"ground_truth": ["", "const", "char", "*", "host_detect_local_cpu", "(", "int", "argc", ",", "const", "char", "*", "*", "argv", ")", "{", "const", "char", "*", "cpu", "=", "NULL", ";", "char", "buf", "[", "128", "]", ";", "FILE", "*", "f", ";", "bool", "arch", ";", "if", "(", "argc", "<", "1", ")", "return", "NULL", ";", "arch", "=", "strcmp", "(", "argv", "[", "0", "]", ",", "\"arch\"", ")", "==", "0", ";", "if", "(", "!", "arch", "&&", "strcmp", "(", "argv", "[", "0", "]", ",", "\"tune\"", ")", ")", "return", "NULL", ";", "f", "=", "fopen", "(", "\"/proc/cpuinfo\"", ",", "\"r\"", ")", ";", "if", "(", "f", "==", "NULL", ")", "return", "NULL", ";", "while", "(", "fgets", "(", "buf", ",", "sizeof", "(", "buf", ")", ",", "f", ")", "!=", "NULL", ")", "if", "(", "startswith", "(", "buf", ",", "\"cpu model\"", ")", ")", "{", "if", "(", "strstr", "(", "buf", ",", "\"Godson2 V0.2\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2 V0.2\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2E\"", ")", "!=", "NULL", ")", "cpu", "=", "\"loongson2e\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Godson2 V0.3\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2 V0.3\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-2F\"", ")", "!=", "NULL", ")", "cpu", "=", "\"loongson2f\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Godson3 V0.5\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-3 V0.5\"", ")", "!=", "NULL", "||", "strstr", "(", "buf", ",", "\"Loongson-3A\"", ")", "!=", "NULL", ")", "cpu", "=", "\"loongson3a\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"SiByte SB1\"", ")", "!=", "NULL", ")", "cpu", "=", "\"sb1\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"R5000\"", ")", "!=", "NULL", ")", "cpu", "=", "\"r5000\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Octeon II\"", ")", "!=", "NULL", ")", "cpu", "=", "\"octeon2\"", ";", "else", "if", "(", "strstr", "(", "buf", ",", "\"Octeon\"", ")", "!=", "NULL", ")", "cpu", "=", "\"octeon\"", ";", "break", ";", "}", "fclose", "(", "f", ")", ";", "if", "(", "cpu", "==", "NULL", ")", "return", "NULL", ";", "return", "concat", "(", "\"-m\"", ",", "argv", "[", "0", "]", ",", "\"=\"", ",", "cpu", ",", "NULL", ")", ";", "}", ""], "natrual_language": ["This", "will", "be", "called", "by", "the", "spec", "parser", "in", "gcc.cc", "when", "it", "sees", "a", "%", ":", "local_cpu_detect", "(", "args", ")", "construct", ".", "Currently", "it", "will", "be", "called", "with", "either", "``", "cpu", "''", "or", "``", "tune", "''", "as", "argument", "depending", "on", "if", "-mcpu=native", "or", "-mtune=native", "is", "to", "be", "substituted", ".", "It", "returns", "a", "string", "containing", "new", "command", "line", "parameters", "to", "be", "put", "at", "the", "place", "of", "the", "above", "two", "options", ",", "depending", "on", "what", "CPU", "this", "is", "executed", ".", "E.g", ".", "``", "-mcpu=ultrasparc3", "''", "on", "an", "UltraSPARC", "III", "for", "-mcpu=native", ".", "If", "the", "routine", "ca", "n't", "detect", "a", "known", "processor", ",", "the", "-mcpu", "or", "-mtune", "option", "is", "discarded", ".", "ARGC", "and", "ARGV", "are", "set", "depending", "on", "the", "actual", "arguments", "given", "in", "the", "spec", "."], "TS_V_token": ["mips", "128", "1", "0", "\"arch\"", "0", "0", "\"tune\"", "\"/proc/cpuinfo\"", "\"r\"", "\"cpu model\"", "\"Godson2 V0.2\"", "\"Loongson-2 V0.2\"", "\"Loongson-2E\"", "\"loongson2e\"", "\"Godson2 V0.3\"", "\"Loongson-2 V0.3\"", "\"Loongson-2F\"", "\"loongson2f\"", "\"Godson3 V0.5\"", "\"Loongson-3 V0.5\"", "\"Loongson-3A\"", "\"loongson3a\"", "\"SiByte SB1\"", "\"sb1\"", "\"R5000\"", "\"r5000\"", "\"Octeon II\"", "\"octeon2\"", "\"Octeon\"", "\"octeon\"", "\"-m\"", "0", "\"=\""], "File": "driver-native", "Func": "host_detect_local_cpu", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32454, "Length": 320} {"ground_truth": ["", "static", "bool", "callees_functions_use_frame_header", "(", "function", "*", "fn", ")", "{", "basic_block", "bb", ";", "gimple_stmt_iterator", "gsi", ";", "gimple", "*", "stmt", ";", "tree", "called_fn_tree", ";", "function", "*", "called_fn", ";", "if", "(", "fn", "->", "cfg", "==", "NULL", ")", "return", "true", ";", "FOR_EACH_BB_FN", "(", "bb", ",", "fn", ")", "{", "for", "(", "gsi", "=", "gsi_start_bb", "(", "bb", ")", ";", "!", "gsi_end_p", "(", "gsi", ")", ";", "gsi_next", "(", "&", "gsi", ")", ")", "{", "stmt", "=", "gsi_stmt", "(", "gsi", ")", ";", "if", "(", "is_gimple_call", "(", "stmt", ")", ")", "{", "called_fn_tree", "=", "gimple_call_fndecl", "(", "stmt", ")", ";", "if", "(", "called_fn_tree", "!=", "NULL", ")", "{", "called_fn", "=", "DECL_STRUCT_FUNCTION", "(", "called_fn_tree", ")", ";", "if", "(", "called_fn", "==", "NULL", "||", "DECL_WEAK", "(", "called_fn_tree", ")", "||", "has_inlined_assembly", "(", "called_fn", ")", "||", "!", "is_leaf_function", "(", "called_fn", ")", "||", "!", "called_fn", "->", "machine", "->", "does_not_use_frame_header", ")", "return", "true", ";", "}", "else", "return", "true", ";", "}", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "argument", "stack", "space", "allocated", "by", "function", "FN", "is", "used", ".", "Return", "false", "if", "the", "space", "is", "needed", "or", "if", "the", "need", "for", "the", "space", "can", "not", "be", "determined", "."], "TS_V_token": ["mips"], "File": "frame-header-opt", "Func": "callees_functions_use_frame_header", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32455, "Length": 146} {"ground_truth": ["", "virtual", "unsigned", "int", "execute", "(", "function", "*", ")", "{", "return", "frame_header_opt", "(", ")", ";", "}", ""], "natrual_language": ["Main", "entry", "point", "for", "this", "pass", "."], "TS_V_token": ["mips"], "File": "frame-header-opt", "Func": "execute", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32456, "Length": 15} {"ground_truth": ["", "static", "unsigned", "int", "frame_header_opt", "(", ")", "{", "struct", "cgraph_node", "*", "node", ";", "function", "*", "fn", ";", "FOR_EACH_DEFINED_FUNCTION", "(", "node", ")", "{", "fn", "=", "node", "->", "get_fun", "(", ")", ";", "if", "(", "fn", "!=", "NULL", ")", "fn", "->", "machine", "->", "does_not_use_frame_header", "=", "!", "needs_frame_header_p", "(", "fn", ")", ";", "}", "FOR_EACH_DEFINED_FUNCTION", "(", "node", ")", "{", "fn", "=", "node", "->", "get_fun", "(", ")", ";", "if", "(", "fn", "!=", "NULL", ")", "fn", "->", "machine", "->", "optimize_call_stack", "=", "!", "callees_functions_use_frame_header", "(", "fn", ")", "&&", "!", "is_leaf_function", "(", "fn", ")", ";", "}", "FOR_EACH_DEFINED_FUNCTION", "(", "node", ")", "{", "fn", "=", "node", "->", "get_fun", "(", ")", ";", "if", "(", "fn", "!=", "NULL", "&&", "fn", "->", "machine", "->", "optimize_call_stack", ")", "set_callers_may_not_allocate_frame", "(", "fn", ")", ";", "}", "return", "0", ";", "}", ""], "natrual_language": ["Scan", "each", "function", "to", "determine", "those", "that", "need", "its", "frame", "headers", ".", "Perform", "a", "second", "scan", "to", "determine", "if", "the", "allocation", "can", "be", "skipped", "because", "none", "of", "their", "callees", "require", "the", "frame", "header", "."], "TS_V_token": ["mips", "0"], "File": "frame-header-opt", "Func": "frame_header_opt", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32457, "Length": 121} {"ground_truth": ["", "static", "bool", "has_inlined_assembly", "(", "function", "*", "fn", ")", "{", "basic_block", "bb", ";", "gimple_stmt_iterator", "gsi", ";", "if", "(", "fn", "->", "cfg", "==", "NULL", ")", "return", "true", ";", "FOR_EACH_BB_FN", "(", "bb", ",", "fn", ")", "for", "(", "gsi", "=", "gsi_start_bb", "(", "bb", ")", ";", "!", "gsi_end_p", "(", "gsi", ")", ";", "gsi_next", "(", "&", "gsi", ")", ")", "if", "(", "gimple_code", "(", "gsi_stmt", "(", "gsi", ")", ")", "==", "GIMPLE_ASM", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "this", "function", "has", "inline", "assembly", "code", "or", "if", "we", "can", "not", "be", "certain", "that", "it", "does", "not", ".", "False", "if", "we", "know", "that", "there", "is", "no", "inline", "assembly", "."], "TS_V_token": ["mips"], "File": "frame-header-opt", "Func": "has_inlined_assembly", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32458, "Length": 72} {"ground_truth": ["", "static", "bool", "is_leaf_function", "(", "function", "*", "fn", ")", "{", "basic_block", "bb", ";", "gimple_stmt_iterator", "gsi", ";", "if", "(", "fn", "->", "cfg", "==", "NULL", ")", "return", "false", ";", "FOR_EACH_BB_FN", "(", "bb", ",", "fn", ")", "for", "(", "gsi", "=", "gsi_start_bb", "(", "bb", ")", ";", "!", "gsi_end_p", "(", "gsi", ")", ";", "gsi_next", "(", "&", "gsi", ")", ")", "if", "(", "is_gimple_call", "(", "gsi_stmt", "(", "gsi", ")", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "it", "is", "certain", "that", "this", "is", "a", "leaf", "function", ".", "False", "if", "it", "is", "not", "a", "leaf", "function", "or", "if", "it", "is", "impossible", "to", "tell", "."], "TS_V_token": ["mips"], "File": "frame-header-opt", "Func": "is_leaf_function", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32459, "Length": 70} {"ground_truth": ["", "static", "bool", "needs_frame_header_p", "(", "function", "*", "fn", ")", "{", "tree", "t", ";", "if", "(", "fn", "->", "decl", "==", "NULL", ")", "return", "true", ";", "if", "(", "fn", "->", "stdarg", ")", "return", "true", ";", "for", "(", "t", "=", "DECL_ARGUMENTS", "(", "fn", "->", "decl", ")", ";", "t", ";", "t", "=", "TREE_CHAIN", "(", "t", ")", ")", "{", "if", "(", "!", "use_register_for_decl", "(", "t", ")", ")", "return", "true", ";", "if", "(", "DECL_MODE", "(", "t", ")", "!=", "SImode", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "this", "function", "will", "use", "the", "stack", "space", "allocated", "by", "its", "caller", "or", "if", "we", "can", "not", "determine", "for", "certain", "that", "it", "does", "not", "."], "TS_V_token": ["mips"], "File": "frame-header-opt", "Func": "needs_frame_header_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32460, "Length": 81} {"ground_truth": ["", "static", "void", "set_callers_may_not_allocate_frame", "(", "function", "*", "fn", ")", "{", "basic_block", "bb", ";", "gimple_stmt_iterator", "gsi", ";", "gimple", "*", "stmt", ";", "tree", "called_fn_tree", ";", "function", "*", "called_fn", ";", "if", "(", "fn", "->", "cfg", "==", "NULL", ")", "return", ";", "FOR_EACH_BB_FN", "(", "bb", ",", "fn", ")", "{", "for", "(", "gsi", "=", "gsi_start_bb", "(", "bb", ")", ";", "!", "gsi_end_p", "(", "gsi", ")", ";", "gsi_next", "(", "&", "gsi", ")", ")", "{", "stmt", "=", "gsi_stmt", "(", "gsi", ")", ";", "if", "(", "is_gimple_call", "(", "stmt", ")", ")", "{", "called_fn_tree", "=", "gimple_call_fndecl", "(", "stmt", ")", ";", "if", "(", "called_fn_tree", "!=", "NULL", ")", "{", "called_fn", "=", "DECL_STRUCT_FUNCTION", "(", "called_fn_tree", ")", ";", "if", "(", "called_fn", "!=", "NULL", ")", "called_fn", "->", "machine", "->", "callers_may_not_allocate_frame", "=", "true", ";", "}", "}", "}", "}", "return", ";", "}", ""], "natrual_language": ["Set", "the", "callers_may_not_allocate_frame", "flag", "for", "any", "function", "which", "function", "FN", "calls", "because", "FN", "may", "not", "allocate", "a", "frame", "header", "."], "TS_V_token": ["mips"], "File": "frame-header-opt", "Func": "set_callers_may_not_allocate_frame", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32461, "Length": 122} {"ground_truth": ["", "machreg_t", "inet_lnaof", "(", "machreg_t", "in", ")", "{", "return", "_inet_lnaof", "(", "in", "<<", "SHIFT_BITS", ")", ";", "}", ""], "natrual_language": ["<", "arpa/inet.h", ">", "has", "unsigned", "long", "inet_lnaof", "(", "struct", "in_addr", ")", ";", "(", "IRIX", "6.2", ")", "in_addr_t", "inet_lnaof", "(", "struct", "in_addr", ")", ";", "(", "IRIX", "6.5", ")", "in_addr_t", "is", "a", "32-bit", "int", "."], "TS_V_token": ["mips"], "File": "irix6-libc-compat", "Func": "inet_lnaof", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32462, "Length": 16} {"ground_truth": ["", "machreg_t", "inet_makeaddr", "(", "machreg_t", "net", ",", "machreg_t", "lna", ")", "{", "return", "_inet_makeaddr", "(", "net", ",", "lna", ")", ">>", "SHIFT_BITS", ";", "}", ""], "natrual_language": ["<", "arpa/inet.h", ">", "has", "struct", "in_addr", "inet_makeaddr", "(", "int", ",", "int", ")", ";", "(", "IRIX", "6.2", ")", "struct", "in_addr", "inet_makeaddr", "(", "in_addr_t", ",", "in_addr_t", ")", ";", "(", "IRIX", "6.5", ")"], "TS_V_token": ["mips"], "File": "irix6-libc-compat", "Func": "inet_makeaddr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32463, "Length": 21} {"ground_truth": ["", "machreg_t", "inet_netof", "(", "machreg_t", "in", ")", "{", "return", "_inet_netof", "(", "in", "<<", "SHIFT_BITS", ")", ";", "}", ""], "natrual_language": ["<", "arpa/inet.h", ">", "has", "unsigned", "long", "inet_netof", "(", "struct", "in_addr", ")", ";", "(", "IRIX", "6.2", ")", "in_addr_t", "inet_netof", "(", "struct", "in_addr", ")", ";", "(", "IRIX", "6.5", ")"], "TS_V_token": ["mips"], "File": "irix6-libc-compat", "Func": "inet_netof", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32464, "Length": 16} {"ground_truth": ["", "machreg_t", "inet_ntoa", "(", "machreg_t", "in", ")", "{", "return", "_inet_ntoa", "(", "in", "<<", "SHIFT_BITS", ")", ";", "}", ""], "natrual_language": ["<", "arpa/inet.h", ">", "has", "char", "*", "inet_ntoa", "(", "struct", "in_addr", ")", ";", "on", "both", "IRIX", "6.2", "and", "6.5", ",", "with", "struct", "in_addr", "containing", "a", "32-bit", "int", "."], "TS_V_token": ["mips"], "File": "irix6-libc-compat", "Func": "inet_ntoa", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32465, "Length": 16} {"ground_truth": ["", "machreg_t", "semctl", "(", "machreg_t", "semid", ",", "machreg_t", "semnum", ",", "machreg_t", "cmd", ",", "machreg_t", "arg", ")", "{", "return", "_semctl", "(", "semid", ",", "semnum", ",", "cmd", ",", "arg", "<<", "SHIFT_BITS", ")", ";", "}", ""], "natrual_language": ["<", "sys/sem.h", ">", "has", "int", "semctl", "(", "int", ",", "int", ",", "int", ",", "...", ")", ";", "where", "the", "variadic", "argument", "is", "union", "semun", "if", "used", ".", "union", "semun", "contains", "an", "int", "and", "two", "pointers", ",", "so", "the", "union", "is", "already", "64", "bits", "wide", "under", "the", "N64", "ABI", "and", "alignment", "is", "not", "an", "issue", "."], "TS_V_token": ["mips"], "File": "irix6-libc-compat", "Func": "semctl", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32466, "Length": 31} {"ground_truth": ["", "static", "tree", "mips_d_handle_target_float_abi", "(", "void", ")", "{", "const", "char", "*", "abi", ";", "if", "(", "TARGET_HARD_FLOAT_ABI", ")", "abi", "=", "\"hard\"", ";", "else", "if", "(", "TARGET_SOFT_FLOAT_ABI", ")", "abi", "=", "\"soft\"", ";", "else", "abi", "=", "\"\"", ";", "return", "build_string_literal", "(", "strlen", "(", "abi", ")", "+", "1", ",", "abi", ")", ";", "}", ""], "natrual_language": ["Handle", "a", "call", "to", "`", "__traits", "(", "getTargetInfo", ",", "``", "floatAbi", "''", ")", "'", "."], "TS_V_token": ["mips", "\"hard\"", "\"soft\"", "\"\"", "1"], "File": "mips-d", "Func": "mips_d_handle_target_float_abi", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32467, "Length": 48} {"ground_truth": ["", "void", "mips_d_register_target_info", "(", "void", ")", "{", "const", "struct", "d_target_info_spec", "handlers", "[", "]", "=", "{", "{", "\"floatAbi\"", ",", "mips_d_handle_target_float_abi", "}", ",", "{", "NULL", ",", "NULL", "}", ",", "}", ";", "d_add_target_info_handlers", "(", "handlers", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_D_REGISTER_CPU_TARGET_INFO", "."], "TS_V_token": ["mips", "\"floatAbi\""], "File": "mips-d", "Func": "mips_d_register_target_info", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32468, "Length": 34} {"ground_truth": ["", "void", "mips_d_target_versions", "(", "void", ")", "{", "if", "(", "TARGET_64BIT", ")", "d_add_builtin_version", "(", "\"MIPS64\"", ")", ";", "else", "d_add_builtin_version", "(", "\"MIPS32\"", ")", ";", "if", "(", "mips_abi", "==", "ABI_32", ")", "d_add_builtin_version", "(", "\"MIPS_O32\"", ")", ";", "else", "if", "(", "mips_abi", "==", "ABI_EABI", ")", "d_add_builtin_version", "(", "\"MIPS_EABI\"", ")", ";", "else", "if", "(", "mips_abi", "==", "ABI_N32", ")", "d_add_builtin_version", "(", "\"MIPS_N32\"", ")", ";", "else", "if", "(", "mips_abi", "==", "ABI_64", ")", "d_add_builtin_version", "(", "\"MIPS_N64\"", ")", ";", "else", "if", "(", "mips_abi", "==", "ABI_O64", ")", "d_add_builtin_version", "(", "\"MIPS_O64\"", ")", ";", "if", "(", "TARGET_HARD_FLOAT_ABI", ")", "{", "d_add_builtin_version", "(", "\"MIPS_HardFloat\"", ")", ";", "d_add_builtin_version", "(", "\"D_HardFloat\"", ")", ";", "}", "else", "if", "(", "TARGET_SOFT_FLOAT_ABI", ")", "{", "d_add_builtin_version", "(", "\"MIPS_SoftFloat\"", ")", ";", "d_add_builtin_version", "(", "\"D_SoftFloat\"", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_D_CPU_VERSIONS", "for", "MIPS", "targets", "."], "TS_V_token": ["mips", "\"MIPS64\"", "\"MIPS32\"", "\"MIPS_O32\"", "\"MIPS_EABI\"", "\"MIPS_N32\"", "\"MIPS_N64\"", "\"MIPS_O64\"", "\"MIPS_HardFloat\"", "\"D_HardFloat\"", "\"MIPS_SoftFloat\"", "\"D_SoftFloat\""], "File": "mips-d", "Func": "mips_d_target_versions", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32469, "Length": 114} {"ground_truth": ["", "static", "unsigned", "HOST_WIDE_INT", "mips_asan_shadow_offset", "(", "void", ")", "{", "if", "(", "mips_abi", "==", "ABI_N32", ")", "return", "(", "HOST_WIDE_INT_1", "<<", "29", ")", ";", "if", "(", "POINTER_SIZE", "==", "64", ")", "return", "(", "HOST_WIDE_INT_1", "<<", "37", ")", ";", "else", "return", "HOST_WIDE_INT_C", "(", "0x0aaa0000", ")", ";", "}", ""], "natrual_language": ["Implement", "the", "TARGET_ASAN_SHADOW_OFFSET", "hook", "."], "TS_V_token": ["mips", "29", "64", "37", "0x0aaa0000"], "File": "mips1", "Func": "mips_asan_shadow_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32470, "Length": 42} {"ground_truth": ["", "static", "section", "*", "mips_function_rodata_section", "(", "tree", "decl", ",", "bool", ")", "{", "if", "(", "!", "TARGET_ABICALLS", "||", "TARGET_ABSOLUTE_ABICALLS", "||", "TARGET_GPWORD", ")", "return", "default_function_rodata_section", "(", "decl", ",", "false", ")", ";", "if", "(", "decl", "&&", "DECL_SECTION_NAME", "(", "decl", ")", ")", "{", "const", "char", "*", "name", "=", "DECL_SECTION_NAME", "(", "decl", ")", ";", "if", "(", "DECL_COMDAT_GROUP", "(", "decl", ")", "&&", "strncmp", "(", "name", ",", "\".gnu.linkonce.t.\"", ",", "16", ")", "==", "0", ")", "{", "char", "*", "rname", "=", "ASTRDUP", "(", "name", ")", ";", "rname", "[", "14", "]", "=", "'d'", ";", "return", "get_section", "(", "rname", ",", "SECTION_LINKONCE", "|", "SECTION_WRITE", ",", "decl", ")", ";", "}", "else", "if", "(", "flag_function_sections", "&&", "flag_data_sections", "&&", "strncmp", "(", "name", ",", "\".text.\"", ",", "6", ")", "==", "0", ")", "{", "char", "*", "rname", "=", "ASTRDUP", "(", "name", ")", ";", "memcpy", "(", "rname", "+", "1", ",", "\"data\"", ",", "4", ")", ";", "return", "get_section", "(", "rname", ",", "SECTION_WRITE", ",", "decl", ")", ";", "}", "}", "return", "data_section", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FUNCTION_RODATA_SECTION", ".", "The", "complication", "here", "is", "that", ",", "with", "the", "combination", "TARGET_ABICALLS", "&", "&", "!", "TARGET_GPWORD", ",", "jump", "tables", "will", "use", "absolute", "addresses", ",", "and", "should", "therefore", "not", "be", "included", "in", "the", "read-only", "part", "of", "a", "DSO", ".", "Handle", "such", "cases", "by", "selecting", "a", "normal", "data", "section", "instead", "of", "a", "read-only", "one", ".", "The", "logic", "apes", "that", "in", "default_function_rodata_section", "."], "TS_V_token": ["mips", "\".gnu.linkonce.t.\"", "16", "0", "14", "\".text.\"", "6", "0", "1", "\"data\"", "4"], "File": "mips1", "Func": "mips_function_rodata_section", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32471, "Length": 151} {"ground_truth": ["", "static", "void", "mips_output_filename", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ")", "{", "if", "(", "dwarf_debuginfo_p", "(", ")", ")", "return", ";", "else", "if", "(", "mips_output_filename_first_time", ")", "{", "mips_output_filename_first_time", "=", "0", ";", "num_source_filenames", "+=", "1", ";", "current_function_file", "=", "name", ";", "fprintf", "(", "stream", ",", "\"\\t.file\\t%d \"", ",", "num_source_filenames", ")", ";", "output_quoted_string", "(", "stream", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "stream", ")", ";", "}", "else", "if", "(", "name", "!=", "current_function_file", "&&", "strcmp", "(", "name", ",", "current_function_file", ")", "!=", "0", ")", "{", "num_source_filenames", "+=", "1", ";", "current_function_file", "=", "name", ";", "fprintf", "(", "stream", ",", "\"\\t.file\\t%d \"", ",", "num_source_filenames", ")", ";", "output_quoted_string", "(", "stream", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "stream", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "a", "new", "filename", "to", "a", "stream", ".", "If", "we", "are", "smuggling", "stabs", ",", "try", "to", "put", "out", "a", "MIPS", "ECOFF", "file", "and", "a", "stab", "."], "TS_V_token": ["mips", "0", "1", "\"\\t.file\\t%d \"", "0", "1", "\"\\t.file\\t%d \""], "File": "mips1", "Func": "mips_output_filename", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32472, "Length": 114} {"ground_truth": ["", "static", "void", "mips_setup_incoming_varargs", "(", "cumulative_args_t", "cum", ",", "const", "function_arg_info", "&", "arg", ",", "int", "*", "pretend_size", "ATTRIBUTE_UNUSED", ",", "int", "no_rtl", ")", "{", "CUMULATIVE_ARGS", "local_cum", ";", "int", "gp_saved", ",", "fp_saved", ";", "local_cum", "=", "*", "get_cumulative_args", "(", "cum", ")", ";", "if", "(", "!", "TYPE_NO_NAMED_ARGS_STDARG_P", "(", "TREE_TYPE", "(", "current_function_decl", ")", ")", ")", "mips_function_arg_advance", "(", "pack_cumulative_args", "(", "&", "local_cum", ")", ",", "arg", ")", ";", "gp_saved", "=", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_gprs", ";", "fp_saved", "=", "(", "EABI_FLOAT_VARARGS_P", "?", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_fprs", ":", "0", ")", ";", "if", "(", "!", "no_rtl", ")", "{", "if", "(", "gp_saved", ">", "0", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "-", "gp_saved", "*", "UNITS_PER_WORD", ")", ";", "mem", "=", "gen_frame_mem", "(", "BLKmode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "move_block_from_reg", "(", "local_cum", ".", "num_gprs", "+", "GP_ARG_FIRST", ",", "mem", ",", "gp_saved", ")", ";", "}", "if", "(", "fp_saved", ">", "0", ")", "{", "machine_mode", "mode", ";", "int", "off", ",", "i", ";", "off", "=", "ROUND_DOWN", "(", "-", "gp_saved", "*", "UNITS_PER_WORD", ",", "UNITS_PER_FPVALUE", ")", ";", "off", "-=", "fp_saved", "*", "UNITS_PER_FPREG", ";", "mode", "=", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ";", "for", "(", "i", "=", "local_cum", ".", "num_fprs", ";", "i", "<", "MAX_ARGS_IN_REGISTERS", ";", "i", "+=", "MAX_FPRS_PER_FMT", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "off", ")", ";", "mem", "=", "gen_frame_mem", "(", "mode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "mips_emit_move", "(", "mem", ",", "gen_rtx_REG", "(", "mode", ",", "FP_ARG_FIRST", "+", "i", ")", ")", ";", "off", "+=", "UNITS_PER_HWFPVALUE", ";", "}", "}", "}", "if", "(", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "==", "0", ")", "cfun", "->", "machine", "->", "varargs_size", "=", "(", "gp_saved", "*", "UNITS_PER_WORD", "+", "fp_saved", "*", "UNITS_PER_FPREG", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SETUP_INCOMING_VARARGS", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips1", "Func": "mips_setup_incoming_varargs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32473, "Length": 292} {"ground_truth": ["", "static", "bool", "mips_vectorize_vec_perm_const", "(", "machine_mode", "vmode", ",", "machine_mode", "op_mode", ",", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ",", "const", "vec_perm_indices", "&", "sel", ")", "{", "if", "(", "vmode", "!=", "op_mode", ")", "return", "false", ";", "struct", "expand_vec_perm_d", "d", ";", "int", "i", ",", "nelt", ",", "which", ";", "unsigned", "char", "orig_perm", "[", "MAX_VECT_LEN", "]", ";", "bool", "ok", ";", "d", ".", "target", "=", "target", ";", "if", "(", "op0", ")", "{", "rtx", "nop0", "=", "force_reg", "(", "vmode", ",", "op0", ")", ";", "if", "(", "op0", "==", "op1", ")", "op1", "=", "nop0", ";", "op0", "=", "nop0", ";", "}", "if", "(", "op1", ")", "op1", "=", "force_reg", "(", "vmode", ",", "op1", ")", ";", "d", ".", "op0", "=", "op0", ";", "d", ".", "op1", "=", "op1", ";", "d", ".", "vmode", "=", "vmode", ";", "gcc_assert", "(", "VECTOR_MODE_P", "(", "vmode", ")", ")", ";", "d", ".", "nelt", "=", "nelt", "=", "GET_MODE_NUNITS", "(", "vmode", ")", ";", "d", ".", "testing_p", "=", "!", "target", ";", "memset", "(", "orig_perm", ",", "0", ",", "MAX_VECT_LEN", ")", ";", "for", "(", "i", "=", "which", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "int", "ei", "=", "sel", "[", "i", "]", "&", "(", "2", "*", "nelt", "-", "1", ")", ";", "which", "|=", "(", "ei", "<", "nelt", "?", "1", ":", "2", ")", ";", "orig_perm", "[", "i", "]", "=", "ei", ";", "}", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "switch", "(", "which", ")", "{", "default", ":", "gcc_unreachable", "(", ")", ";", "case", "3", ":", "d", ".", "one_vector_p", "=", "false", ";", "if", "(", "d", ".", "testing_p", "||", "!", "rtx_equal_p", "(", "d", ".", "op0", ",", "d", ".", "op1", ")", ")", "break", ";", "case", "2", ":", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "d", ".", "perm", "[", "i", "]", "&=", "nelt", "-", "1", ";", "d", ".", "op0", "=", "d", ".", "op1", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "case", "1", ":", "d", ".", "op1", "=", "d", ".", "op0", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "}", "if", "(", "d", ".", "testing_p", ")", "{", "d", ".", "target", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "1", ")", ";", "d", ".", "op1", "=", "d", ".", "op0", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "2", ")", ";", "if", "(", "!", "d", ".", "one_vector_p", ")", "d", ".", "op1", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "3", ")", ";", "start_sequence", "(", ")", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "end_sequence", "(", ")", ";", "return", "ok", ";", "}", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "if", "(", "!", "ok", "&&", "which", "==", "3", ")", "{", "d", ".", "op0", "=", "op0", ";", "d", ".", "op1", "=", "op1", ";", "d", ".", "one_vector_p", "=", "false", ";", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "}", "return", "ok", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_VEC_PERM_CONST", "."], "TS_V_token": ["mips", "0", "0", "2", "1", "1", "2", "3", "2", "0", "1", "1", "1", "2", "3", "3"], "File": "mips1", "Func": "mips_vectorize_vec_perm_const", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32474, "Length": 466} {"ground_truth": ["", "rtx", "mips16_gp_pseudo_reg", "(", ")", "{", "if", "(", "mips16_gp_pseudo_rtx", "==", "NULL_RTX", ")", "{", "rtx", "const_gp", ";", "rtx", "insn", ",", "scan", ";", "mips16_gp_pseudo_rtx", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "RTX_UNCHANGING_P", "(", "mips16_gp_pseudo_rtx", ")", "=", "1", ";", "const_gp", "=", "gen_rtx", "(", "CONST", ",", "Pmode", ",", "gen_rtx", "(", "REG", ",", "Pmode", ",", "GP_REG_FIRST", "+", "28", ")", ")", ";", "start_sequence", "(", ")", ";", "emit_move_insn", "(", "mips16_gp_pseudo_rtx", ",", "const_gp", ")", ";", "insn", "=", "gen_sequence", "(", ")", ";", "end_sequence", "(", ")", ";", "push_topmost_sequence", "(", ")", ";", "for", "(", "scan", "=", "get_insns", "(", ")", ";", "scan", "!=", "NULL_RTX", ";", "scan", "=", "NEXT_INSN", "(", "scan", ")", ")", "if", "(", "GET_CODE", "(", "scan", ")", "==", "NOTE", "&&", "NOTE_LINE_NUMBER", "(", "scan", ")", "==", "NOTE_INSN_FUNCTION_BEG", ")", "break", ";", "if", "(", "scan", "==", "NULL_RTX", ")", "scan", "=", "get_insns", "(", ")", ";", "insn", "=", "emit_insn_after", "(", "insn", ",", "scan", ")", ";", "pop_topmost_sequence", "(", ")", ";", "}", "return", "mips16_gp_pseudo_rtx", ";", "}", ""], "natrual_language": ["If", "we", "can", "access", "small", "data", "directly", "(", "using", "gp-relative", "relocation", "operators", ")", "return", "the", "small", "data", "pointer", ",", "otherwise", "return", "null", ".", "For", "each", "mips16", "function", "which", "refers", "to", "GP", "relative", "symbols", ",", "we", "use", "a", "pseudo", "register", ",", "initialized", "at", "the", "start", "of", "the", "function", ",", "to", "hold", "the", "$", "gp", "value", "."], "TS_V_token": ["mips", "1", "28"], "File": "mips2", "Func": "mips16_gp_pseudo_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32475, "Length": 146} {"ground_truth": ["", "static", "void", "mips_add_gc_roots", "(", ")", "{", "ggc_add_rtx_root", "(", "&", "mips_load_reg", ",", "1", ")", ";", "ggc_add_rtx_root", "(", "&", "mips_load_reg2", ",", "1", ")", ";", "ggc_add_rtx_root", "(", "&", "mips_load_reg3", ",", "1", ")", ";", "ggc_add_rtx_root", "(", "&", "mips_load_reg4", ",", "1", ")", ";", "ggc_add_rtx_root", "(", "branch_cmp", ",", "sizeof", "(", "branch_cmp", ")", "/", "sizeof", "(", "rtx", ")", ")", ";", "ggc_add_rtx_root", "(", "&", "embedded_pic_fnaddr_rtx", ",", "1", ")", ";", "ggc_add_rtx_root", "(", "&", "mips16_gp_pseudo_rtx", ",", "1", ")", ";", "}", ""], "natrual_language": ["Called", "to", "register", "all", "of", "our", "global", "variables", "with", "the", "garbage", "collector", "."], "TS_V_token": ["mips", "1", "1", "1", "1", "1", "1"], "File": "mips2", "Func": "mips_add_gc_roots", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32476, "Length": 70} {"ground_truth": ["", "tree", "mips_build_va_list", "(", ")", "{", "if", "(", "mips_abi", "==", "ABI_EABI", "&&", "!", "TARGET_SOFT_FLOAT", "&&", "!", "TARGET_SINGLE_FLOAT", ")", "{", "tree", "f_ovfl", ",", "f_gtop", ",", "f_ftop", ",", "f_goff", ",", "f_foff", ",", "record", ";", "record", "=", "make_node", "(", "RECORD_TYPE", ")", ";", "f_ovfl", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__overflow_argptr\"", ")", ",", "ptr_type_node", ")", ";", "f_gtop", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__gpr_top\"", ")", ",", "ptr_type_node", ")", ";", "f_ftop", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__fpr_top\"", ")", ",", "ptr_type_node", ")", ";", "f_goff", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__gpr_offset\"", ")", ",", "unsigned_char_type_node", ")", ";", "f_foff", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__fpr_offset\"", ")", ",", "unsigned_char_type_node", ")", ";", "DECL_FIELD_CONTEXT", "(", "f_ovfl", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_gtop", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_ftop", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_goff", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_foff", ")", "=", "record", ";", "TYPE_FIELDS", "(", "record", ")", "=", "f_ovfl", ";", "TREE_CHAIN", "(", "f_ovfl", ")", "=", "f_gtop", ";", "TREE_CHAIN", "(", "f_gtop", ")", "=", "f_ftop", ";", "TREE_CHAIN", "(", "f_ftop", ")", "=", "f_goff", ";", "TREE_CHAIN", "(", "f_goff", ")", "=", "f_foff", ";", "layout_type", "(", "record", ")", ";", "return", "record", ";", "}", "else", "return", "ptr_type_node", ";", "}", ""], "natrual_language": ["Create", "the", "va_list", "data", "type", ".", "We", "keep", "3", "pointers", ",", "and", "two", "offsets", ".", "Two", "pointers", "are", "to", "the", "overflow", "area", ",", "which", "starts", "at", "the", "CFA", ".", "One", "of", "these", "is", "constant", ",", "for", "addressing", "into", "the", "GPR", "save", "area", "below", "it", ".", "The", "other", "is", "advanced", "up", "the", "stack", "through", "the", "overflow", "region", ".", "The", "third", "pointer", "is", "to", "the", "GPR", "save", "area", ".", "Since", "the", "FPR", "save", "area", "is", "just", "below", "it", ",", "we", "can", "address", "FPR", "slots", "off", "this", "pointer", ".", "We", "also", "keep", "two", "one-byte", "offsets", ",", "which", "are", "to", "be", "subtracted", "from", "the", "constant", "pointers", "to", "yield", "addresses", "in", "the", "GPR", "and", "FPR", "save", "areas", ".", "These", "are", "downcounted", "as", "float", "or", "non-float", "arguments", "are", "used", ",", "and", "when", "they", "get", "to", "zero", ",", "the", "argument", "must", "be", "obtained", "from", "the", "overflow", "region", ".", "If", "TARGET_SOFT_FLOAT", "or", "TARGET_SINGLE_FLOAT", ",", "then", "no", "FPR", "save", "area", "exists", ",", "and", "a", "single", "pointer", "is", "enough", ".", "It", "'s", "started", "at", "the", "GPR", "save", "area", ",", "and", "is", "advanced", ",", "period", ".", "Note", "that", "the", "GPR", "save", "area", "is", "not", "constant", "size", ",", "due", "to", "optimization", "in", "the", "prologue", ".", "Hence", ",", "we", "ca", "n't", "use", "a", "design", "with", "two", "pointers", "and", "two", "offsets", ",", "although", "we", "could", "have", "designed", "this", "with", "two", "pointers", "and", "three", "offsets", "."], "TS_V_token": ["mips", "\"__overflow_argptr\"", "\"__gpr_top\"", "\"__fpr_top\"", "\"__gpr_offset\"", "\"__fpr_offset\""], "File": "mips2", "Func": "mips_build_va_list", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32477, "Length": 192} {"ground_truth": ["", "int", "mips_can_use_return_insn", "(", ")", "{", "if", "(", "!", "reload_completed", ")", "return", "0", ";", "if", "(", "regs_ever_live", "[", "31", "]", "||", "current_function_profile", ")", "return", "0", ";", "if", "(", "TARGET_MIPS16", "&&", "mips16_hard_float", "&&", "!", "aggregate_value_p", "(", "DECL_RESULT", "(", "current_function_decl", ")", ")", "&&", "(", "GET_MODE_CLASS", "(", "DECL_MODE", "(", "DECL_RESULT", "(", "current_function_decl", ")", ")", ")", "==", "MODE_FLOAT", ")", "&&", "(", "!", "TARGET_SINGLE_FLOAT", "||", "(", "GET_MODE_SIZE", "(", "DECL_MODE", "(", "DECL_RESULT", "(", "current_function_decl", ")", ")", ")", "<=", "4", ")", ")", ")", "return", "0", ";", "if", "(", "current_frame_info", ".", "initialized", ")", "return", "current_frame_info", ".", "total_size", "==", "0", ";", "return", "compute_frame_size", "(", "get_frame_size", "(", ")", ")", "==", "0", ";", "}", ""], "natrual_language": ["Return", "nonzero", "if", "this", "function", "is", "known", "to", "have", "a", "null", "epilogue", ".", "This", "allows", "the", "optimizer", "to", "omit", "jumps", "to", "jumps", "if", "no", "stack", "was", "created", "."], "TS_V_token": ["mips", "0", "31", "0", "4", "0", "0", "0"], "File": "mips2", "Func": "mips_can_use_return_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32478, "Length": 102} {"ground_truth": ["", "void", "mips_order_regs_for_local_alloc", "(", ")", "{", "register", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "FIRST_PSEUDO_REGISTER", ";", "i", "++", ")", "reg_alloc_order", "[", "i", "]", "=", "i", ";", "if", "(", "TARGET_MIPS16", ")", "{", "reg_alloc_order", "[", "0", "]", "=", "24", ";", "reg_alloc_order", "[", "24", "]", "=", "0", ";", "}", "}", ""], "natrual_language": ["On", "the", "mips16", ",", "we", "want", "to", "allocate", "$", "24", "(", "T_REG", ")", "before", "other", "registers", "for", "instructions", "for", "which", "it", "is", "possible", ".", "This", "helps", "avoid", "shuffling", "registers", "around", "in", "order", "to", "set", "up", "for", "an", "xor", ",", "encouraging", "the", "compiler", "to", "use", "a", "cmp", "instead", "."], "TS_V_token": ["mips", "0", "0", "24", "24", "0"], "File": "mips2", "Func": "mips_order_regs_for_local_alloc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32479, "Length": 50} {"ground_truth": ["", "static", "rtx", "add_constant", "(", "struct", "mips16_constant_pool", "*", "pool", ",", "rtx", "value", ",", "enum", "machine_mode", "mode", ")", "{", "struct", "mips16_constant", "*", "*", "p", ",", "*", "c", ";", "bool", "first_of_size_p", ";", "first_of_size_p", "=", "true", ";", "for", "(", "p", "=", "&", "pool", "->", "first", ";", "*", "p", "!=", "0", ";", "p", "=", "&", "(", "*", "p", ")", "->", "next", ")", "{", "if", "(", "mode", "==", "(", "*", "p", ")", "->", "mode", "&&", "rtx_equal_p", "(", "value", ",", "(", "*", "p", ")", "->", "value", ")", ")", "return", "(", "*", "p", ")", "->", "label", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "<", "GET_MODE_SIZE", "(", "(", "*", "p", ")", "->", "mode", ")", ")", "break", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "==", "GET_MODE_SIZE", "(", "(", "*", "p", ")", "->", "mode", ")", ")", "first_of_size_p", "=", "false", ";", "}", "if", "(", "pool", "->", "first", "==", "0", ")", "pool", "->", "highest_address", "=", "pool", "->", "insn_address", "-", "(", "UNITS_PER_WORD", "-", "2", ")", "+", "0x8000", ";", "pool", "->", "highest_address", "-=", "GET_MODE_SIZE", "(", "mode", ")", ";", "if", "(", "first_of_size_p", ")", "pool", "->", "highest_address", "-=", "GET_MODE_SIZE", "(", "mode", ")", "-", "1", ";", "c", "=", "(", "struct", "mips16_constant", "*", ")", "xmalloc", "(", "sizeof", "*", "c", ")", ";", "c", "->", "value", "=", "value", ";", "c", "->", "mode", "=", "mode", ";", "c", "->", "label", "=", "gen_label_rtx", "(", ")", ";", "c", "->", "next", "=", "*", "p", ";", "*", "p", "=", "c", ";", "return", "c", "->", "label", ";", "}", ""], "natrual_language": ["Add", "a", "constant", "to", "the", "pool", "and", "return", "its", "label", "."], "TS_V_token": ["mips", "0", "0", "2", "0x8000", "1"], "File": "mips3", "Func": "add_constant", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32480, "Length": 230} {"ground_truth": ["", "static", "void", "build_mips16_function_stub", "(", "FILE", "*", "file", ")", "{", "const", "char", "*", "fnname", ";", "char", "*", "secname", ",", "*", "stubname", ";", "tree", "stubid", ",", "stubdecl", ";", "int", "need_comma", ";", "unsigned", "int", "f", ";", "fnname", "=", "XSTR", "(", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ",", "0", ")", ";", "secname", "=", "(", "char", "*", ")", "alloca", "(", "strlen", "(", "fnname", ")", "+", "20", ")", ";", "sprintf", "(", "secname", ",", "\".mips16.fn.%s\"", ",", "fnname", ")", ";", "stubname", "=", "(", "char", "*", ")", "alloca", "(", "strlen", "(", "fnname", ")", "+", "20", ")", ";", "sprintf", "(", "stubname", ",", "\"__fn_stub_%s\"", ",", "fnname", ")", ";", "stubid", "=", "get_identifier", "(", "stubname", ")", ";", "stubdecl", "=", "build_decl", "(", "FUNCTION_DECL", ",", "stubid", ",", "build_function_type", "(", "void_type_node", ",", "NULL_TREE", ")", ")", ";", "DECL_SECTION_NAME", "(", "stubdecl", ")", "=", "build_string", "(", "strlen", "(", "secname", ")", ",", "secname", ")", ";", "fprintf", "(", "file", ",", "\"\\t# Stub function for %s (\"", ",", "current_function_name", "(", ")", ")", ";", "need_comma", "=", "0", ";", "for", "(", "f", "=", "(", "unsigned", "int", ")", "current_function_args_info", ".", "fp_code", ";", "f", "!=", "0", ";", "f", ">>=", "2", ")", "{", "fprintf", "(", "file", ",", "\"%s%s\"", ",", "need_comma", "?", "\", \"", ":", "\"\"", ",", "(", "f", "&", "3", ")", "==", "1", "?", "\"float\"", ":", "\"double\"", ")", ";", "need_comma", "=", "1", ";", "}", "fprintf", "(", "file", ",", "\")\\n\"", ")", ";", "fprintf", "(", "file", ",", "\"\\t.set\\tnomips16\\n\"", ")", ";", "function_section", "(", "stubdecl", ")", ";", "ASM_OUTPUT_ALIGN", "(", "file", ",", "floor_log2", "(", "FUNCTION_BOUNDARY", "/", "BITS_PER_UNIT", ")", ")", ";", "if", "(", "!", "FUNCTION_NAME_ALREADY_DECLARED", ")", "{", "fputs", "(", "\"\\t.ent\\t\"", ",", "file", ")", ";", "assemble_name", "(", "file", ",", "stubname", ")", ";", "fputs", "(", "\"\\n\"", ",", "file", ")", ";", "}", "assemble_name", "(", "file", ",", "stubname", ")", ";", "fputs", "(", "\":\\n\"", ",", "file", ")", ";", "fprintf", "(", "file", ",", "\"\\t.set\\tnoreorder\\n\"", ")", ";", "mips16_fp_args", "(", "file", ",", "current_function_args_info", ".", "fp_code", ",", "1", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tnoat\\n\"", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tla\\t%s,\"", ",", "reg_names", "[", "GP_REG_FIRST", "+", "1", "]", ")", ";", "assemble_name", "(", "file", ",", "fnname", ")", ";", "fprintf", "(", "file", ",", "\"\\n\"", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tjr\\t%s\\n\"", ",", "reg_names", "[", "GP_REG_FIRST", "+", "1", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tat\\n\"", ")", ";", "fprintf", "(", "file", ",", "\"\\tnop\\n\"", ")", ";", "fprintf", "(", "file", ",", "\"\\t.set\\treorder\\n\"", ")", ";", "if", "(", "!", "FUNCTION_NAME_ALREADY_DECLARED", ")", "{", "fputs", "(", "\"\\t.end\\t\"", ",", "file", ")", ";", "assemble_name", "(", "file", ",", "stubname", ")", ";", "fputs", "(", "\"\\n\"", ",", "file", ")", ";", "}", "fprintf", "(", "file", ",", "\"\\t.set\\tmips16\\n\"", ")", ";", "function_section", "(", "current_function_decl", ")", ";", "}", ""], "natrual_language": ["Build", "a", "mips16", "function", "stub", ".", "This", "is", "used", "for", "functions", "which", "take", "arguments", "in", "the", "floating", "point", "registers", ".", "It", "is", "32", "bit", "code", "that", "moves", "the", "floating", "point", "args", "into", "the", "general", "registers", ",", "and", "then", "jumps", "to", "the", "16", "bit", "code", "."], "TS_V_token": ["mips", "0", "0", "20", "\".mips16.fn.%s\"", "20", "\"__fn_stub_%s\"", "\"\\t# Stub function for %s (\"", "0", "0", "2", "\"%s%s\"", "\", \"", "\"\"", "3", "1", "\"float\"", "\"double\"", "1", "\")\\n\"", "\"\\t.set\\tnomips16\\n\"", "\"\\t.ent\\t\"", "\"\\n\"", "\":\\n\"", "\"\\t.set\\tnoreorder\\n\"", "1", "\"\\t.set\\tnoat\\n\"", "\"\\tla\\t%s,\"", "1", "\"\\n\"", "\"\\tjr\\t%s\\n\"", "1", "\"\\t.set\\tat\\n\"", "\"\\tnop\\n\"", "\"\\t.set\\treorder\\n\"", "\"\\t.end\\t\"", "\"\\n\"", "\"\\t.set\\tmips16\\n\""], "File": "mips3", "Func": "build_mips16_function_stub", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32481, "Length": 406} {"ground_truth": ["", "static", "void", "dump_constants", "(", "struct", "mips16_constant", "*", "constants", ",", "rtx", "insn", ")", "{", "struct", "mips16_constant", "*", "c", ",", "*", "next", ";", "int", "align", ";", "align", "=", "0", ";", "for", "(", "c", "=", "constants", ";", "c", "!=", "NULL", ";", "c", "=", "next", ")", "{", "if", "(", "align", "<", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ")", "{", "int", "align_log", "=", "floor_log2", "(", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ")", ";", "insn", "=", "emit_insn_after", "(", "gen_align", "(", "GEN_INT", "(", "align_log", ")", ")", ",", "insn", ")", ";", "}", "align", "=", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ";", "insn", "=", "emit_label_after", "(", "c", "->", "label", ",", "insn", ")", ";", "insn", "=", "dump_constants_1", "(", "c", "->", "mode", ",", "c", "->", "value", ",", "insn", ")", ";", "next", "=", "c", "->", "next", ";", "free", "(", "c", ")", ";", "}", "emit_barrier_after", "(", "insn", ")", ";", "}", ""], "natrual_language": ["Dump", "out", "the", "constants", "in", "CONSTANTS", "after", "INSN", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "dump_constants", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32482, "Length": 137} {"ground_truth": ["", "static", "rtx", "dump_constants_1", "(", "enum", "machine_mode", "mode", ",", "rtx", "value", ",", "rtx", "insn", ")", "{", "switch", "(", "GET_MODE_CLASS", "(", "mode", ")", ")", "{", "case", "MODE_INT", ":", "{", "rtx", "size", "=", "GEN_INT", "(", "GET_MODE_SIZE", "(", "mode", ")", ")", ";", "return", "emit_insn_after", "(", "gen_consttable_int", "(", "value", ",", "size", ")", ",", "insn", ")", ";", "}", "case", "MODE_FLOAT", ":", "return", "emit_insn_after", "(", "gen_consttable_float", "(", "value", ")", ",", "insn", ")", ";", "case", "MODE_VECTOR_FLOAT", ":", "case", "MODE_VECTOR_INT", ":", "{", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "CONST_VECTOR_NUNITS", "(", "value", ")", ";", "i", "++", ")", "insn", "=", "dump_constants_1", "(", "GET_MODE_INNER", "(", "mode", ")", ",", "CONST_VECTOR_ELT", "(", "value", ",", "i", ")", ",", "insn", ")", ";", "return", "insn", ";", "}", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "}", ""], "natrual_language": ["Output", "constant", "VALUE", "after", "instruction", "INSN", "and", "return", "the", "last", "instruction", "emitted", ".", "MODE", "is", "the", "mode", "of", "the", "constant", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "dump_constants_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32483, "Length": 123} {"ground_truth": ["", "void", "function_arg_advance", "(", "CUMULATIVE_ARGS", "*", "cum", ",", "enum", "machine_mode", "mode", ",", "tree", "type", ",", "int", "named", ")", "{", "struct", "mips_arg_info", "info", ";", "mips_arg_info", "(", "cum", ",", "mode", ",", "type", ",", "named", ",", "&", "info", ")", ";", "if", "(", "!", "info", ".", "fpr_p", ")", "cum", "->", "gp_reg_found", "=", "true", ";", "if", "(", "cum", "->", "arg_number", "<", "2", "&&", "info", ".", "fpr_p", ")", "cum", "->", "fp_code", "+=", "(", "mode", "==", "SFmode", "?", "1", ":", "2", ")", "<<", "(", "(", "cum", "->", "arg_number", "-", "1", ")", "*", "2", ")", ";", "if", "(", "mips_abi", "!=", "ABI_EABI", "||", "!", "info", ".", "fpr_p", ")", "cum", "->", "num_gprs", "=", "info", ".", "reg_offset", "+", "info", ".", "reg_words", ";", "else", "if", "(", "info", ".", "reg_words", ">", "0", ")", "cum", "->", "num_fprs", "+=", "FP_INC", ";", "if", "(", "info", ".", "stack_words", ">", "0", ")", "cum", "->", "stack_words", "=", "info", ".", "stack_offset", "+", "info", ".", "stack_words", ";", "cum", "->", "arg_number", "++", ";", "}", ""], "natrual_language": ["Handle", "the", "FUNCTION_ARG_ADVANCE", "macro", ".", "Update", "the", "data", "in", "CUM", "to", "advance", "over", "an", "argument", "of", "mode", "MODE", "and", "data", "type", "TYPE", ".", "TYPE", "is", "null", "for", "libcalls", "where", "that", "information", "may", "not", "be", "available", "."], "TS_V_token": ["mips", "2", "1", "2", "1", "2", "0", "0"], "File": "mips3", "Func": "function_arg_advance", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32484, "Length": 151} {"ground_truth": ["", "int", "function_arg_boundary", "(", "enum", "machine_mode", "mode", ",", "tree", "type", ")", "{", "unsigned", "int", "alignment", ";", "alignment", "=", "type", "?", "TYPE_ALIGN", "(", "type", ")", ":", "GET_MODE_ALIGNMENT", "(", "mode", ")", ";", "if", "(", "alignment", "<", "PARM_BOUNDARY", ")", "alignment", "=", "PARM_BOUNDARY", ";", "if", "(", "alignment", ">", "STACK_BOUNDARY", ")", "alignment", "=", "STACK_BOUNDARY", ";", "return", "alignment", ";", "}", ""], "natrual_language": ["If", "defined", ",", "a", "C", "expression", "that", "gives", "the", "alignment", "boundary", ",", "in", "bits", ",", "of", "an", "argument", "with", "the", "specified", "mode", "and", "type", ".", "If", "it", "is", "not", "defined", ",", "PARM_BOUNDARY", "is", "used", "for", "all", "arguments", ".", "V.4", "wants", "long", "longs", "to", "be", "double", "word", "aligned", ".", "Doubleword", "align", "SPE", "vectors", ".", "Quadword", "align", "Altivec", "vectors", ".", "Quadword", "align", "large", "synthetic", "vector", "types", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "function_arg_boundary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32485, "Length": 53} {"ground_truth": ["", "void", "gen_conditional_branch", "(", "rtx", "*", "operands", ",", "enum", "rtx_code", "code", ")", "{", "rtx", "op0", ",", "op1", ",", "target", ";", "mips_emit_compare", "(", "&", "code", ",", "&", "op0", ",", "&", "op1", ",", "TARGET_MIPS16", ")", ";", "target", "=", "gen_rtx_IF_THEN_ELSE", "(", "VOIDmode", ",", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ",", "op1", ")", ",", "gen_rtx_LABEL_REF", "(", "VOIDmode", ",", "operands", "[", "0", "]", ")", ",", "pc_rtx", ")", ";", "emit_jump_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "pc_rtx", ",", "target", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "the", "common", "code", "for", "doing", "conditional", "branches", ".", "operand", "[", "0", "]", "is", "the", "label", "to", "jump", "to", ".", "The", "comparison", "operands", "are", "saved", "away", "by", "cmp", "{", "si", ",", "di", ",", "sf", ",", "df", "}", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "gen_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32486, "Length": 79} {"ground_truth": ["", "void", "gen_conditional_move", "(", "rtx", "*", "operands", ")", "{", "enum", "rtx_code", "code", ";", "rtx", "op0", ",", "op1", ";", "code", "=", "GET_CODE", "(", "operands", "[", "1", "]", ")", ";", "mips_emit_compare", "(", "&", "code", ",", "&", "op0", ",", "&", "op1", ",", "true", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "operands", "[", "0", "]", ",", "gen_rtx_IF_THEN_ELSE", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ",", "op1", ")", ",", "operands", "[", "2", "]", ",", "operands", "[", "3", "]", ")", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "the", "common", "code", "for", "conditional", "moves", ".", "OPERANDS", "is", "the", "array", "of", "operands", "passed", "to", "the", "conditional", "move", "define_expand", "."], "TS_V_token": ["mips", "1", "0", "0", "2", "3"], "File": "mips3", "Func": "gen_conditional_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32487, "Length": 90} {"ground_truth": ["", "void", "init_cumulative_args", "(", "CUMULATIVE_ARGS", "*", "cum", ",", "tree", "fntype", ",", "rtx", "libname", "ATTRIBUTE_UNUSED", ")", "{", "static", "CUMULATIVE_ARGS", "zero_cum", ";", "tree", "param", ",", "next_param", ";", "*", "cum", "=", "zero_cum", ";", "cum", "->", "prototype", "=", "(", "fntype", "&&", "TYPE_ARG_TYPES", "(", "fntype", ")", ")", ";", "for", "(", "param", "=", "fntype", "?", "TYPE_ARG_TYPES", "(", "fntype", ")", ":", "0", ";", "param", "!=", "0", ";", "param", "=", "next_param", ")", "{", "next_param", "=", "TREE_CHAIN", "(", "param", ")", ";", "if", "(", "next_param", "==", "0", "&&", "TREE_VALUE", "(", "param", ")", "!=", "void_type_node", ")", "cum", "->", "gp_reg_found", "=", "1", ";", "}", "}", ""], "natrual_language": ["Handle", "the", "INIT_CUMULATIVE_ARGS", "macro", ".", "Initialize", "a", "variable", "CUM", "of", "type", "CUMULATIVE_ARGS", "for", "a", "call", "to", "a", "function", "whose", "data", "type", "is", "FNTYPE", ".", "For", "a", "library", "call", ",", "FNTYPE", "is", "0", "."], "TS_V_token": ["mips", "0", "0", "0", "1"], "File": "mips3", "Func": "init_cumulative_args", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32488, "Length": 92} {"ground_truth": ["", "static", "int", "m16_check_op", "(", "rtx", "op", ",", "int", "low", ",", "int", "high", ",", "int", "mask", ")", "{", "return", "(", "GET_CODE", "(", "op", ")", "==", "CONST_INT", "&&", "INTVAL", "(", "op", ")", ">=", "low", "&&", "INTVAL", "(", "op", ")", "<=", "high", "&&", "(", "INTVAL", "(", "op", ")", "&", "mask", ")", "==", "0", ")", ";", "}", ""], "natrual_language": ["We", "need", "a", "lot", "of", "little", "routines", "to", "check", "constant", "values", "on", "the", "mips16", ".", "These", "are", "used", "to", "figure", "out", "how", "long", "the", "instruction", "will", "be", ".", "It", "would", "be", "much", "better", "to", "do", "this", "using", "constraints", ",", "but", "there", "are", "n't", "nearly", "enough", "letters", "available", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "m16_check_op", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32489, "Length": 53} {"ground_truth": ["", "static", "void", "mips16_fp_args", "(", "FILE", "*", "file", ",", "int", "fp_code", ",", "int", "from_fp_p", ")", "{", "const", "char", "*", "s", ";", "int", "gparg", ",", "fparg", ";", "unsigned", "int", "f", ";", "gcc_assert", "(", "TARGET_OLDABI", ")", ";", "if", "(", "from_fp_p", ")", "s", "=", "\"mfc1\"", ";", "else", "s", "=", "\"mtc1\"", ";", "gparg", "=", "GP_ARG_FIRST", ";", "fparg", "=", "FP_ARG_FIRST", ";", "for", "(", "f", "=", "(", "unsigned", "int", ")", "fp_code", ";", "f", "!=", "0", ";", "f", ">>=", "2", ")", "{", "if", "(", "(", "f", "&", "3", ")", "==", "1", ")", "{", "if", "(", "(", "fparg", "&", "1", ")", "!=", "0", ")", "++", "fparg", ";", "fprintf", "(", "file", ",", "\"\\t%s\\t%s,%s\\n\"", ",", "s", ",", "reg_names", "[", "gparg", "]", ",", "reg_names", "[", "fparg", "]", ")", ";", "}", "else", "if", "(", "(", "f", "&", "3", ")", "==", "2", ")", "{", "if", "(", "TARGET_64BIT", ")", "fprintf", "(", "file", ",", "\"\\td%s\\t%s,%s\\n\"", ",", "s", ",", "reg_names", "[", "gparg", "]", ",", "reg_names", "[", "fparg", "]", ")", ";", "else", "{", "if", "(", "(", "fparg", "&", "1", ")", "!=", "0", ")", "++", "fparg", ";", "if", "(", "TARGET_BIG_ENDIAN", ")", "fprintf", "(", "file", ",", "\"\\t%s\\t%s,%s\\n\\t%s\\t%s,%s\\n\"", ",", "s", ",", "reg_names", "[", "gparg", "]", ",", "reg_names", "[", "fparg", "+", "1", "]", ",", "s", ",", "reg_names", "[", "gparg", "+", "1", "]", ",", "reg_names", "[", "fparg", "]", ")", ";", "else", "fprintf", "(", "file", ",", "\"\\t%s\\t%s,%s\\n\\t%s\\t%s,%s\\n\"", ",", "s", ",", "reg_names", "[", "gparg", "]", ",", "reg_names", "[", "fparg", "]", ",", "s", ",", "reg_names", "[", "gparg", "+", "1", "]", ",", "reg_names", "[", "fparg", "+", "1", "]", ")", ";", "++", "gparg", ";", "++", "fparg", ";", "}", "}", "else", "gcc_unreachable", "(", ")", ";", "++", "gparg", ";", "++", "fparg", ";", "}", "}", ""], "natrual_language": ["Write", "out", "code", "to", "move", "floating", "point", "arguments", "in", "or", "out", "of", "general", "registers", ".", "Output", "the", "instructions", "to", "FILE", ".", "FP_CODE", "is", "the", "code", "describing", "which", "arguments", "are", "present", "(", "see", "the", "comment", "at", "the", "definition", "of", "CUMULATIVE_ARGS", "in", "mips.h", ")", ".", "FROM_FP_P", "is", "nonzero", "if", "we", "are", "copying", "from", "the", "floating", "point", "registers", "."], "TS_V_token": ["mips", "\"mfc1\"", "\"mtc1\"", "0", "2", "3", "1", "1", "0", "\"\\t%s\\t%s,%s\\n\"", "3", "2", "\"\\td%s\\t%s,%s\\n\"", "1", "0", "\"\\t%s\\t%s,%s\\n\\t%s\\t%s,%s\\n\"", "1", "1", "\"\\t%s\\t%s,%s\\n\\t%s\\t%s,%s\\n\"", "1", "1"], "File": "mips3", "Func": "mips16_fp_args", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32490, "Length": 264} {"ground_truth": ["", "static", "rtx", "mips16_gp_pseudo_reg", "(", "void", ")", "{", "if", "(", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", "==", "NULL_RTX", ")", "{", "rtx", "unspec", ";", "rtx", "insn", ",", "scan", ";", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "start_sequence", "(", ")", ";", "unspec", "=", "gen_rtx_UNSPEC", "(", "VOIDmode", ",", "gen_rtvec", "(", "1", ",", "const0_rtx", ")", ",", "UNSPEC_GP", ")", ";", "emit_move_insn", "(", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", ",", "gen_rtx_CONST", "(", "Pmode", ",", "unspec", ")", ")", ";", "insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "push_topmost_sequence", "(", ")", ";", "for", "(", "scan", "=", "get_insns", "(", ")", ";", "scan", "!=", "NULL_RTX", ";", "scan", "=", "NEXT_INSN", "(", "scan", ")", ")", "if", "(", "NOTE_P", "(", "scan", ")", "&&", "NOTE_LINE_NUMBER", "(", "scan", ")", "==", "NOTE_INSN_FUNCTION_BEG", ")", "break", ";", "if", "(", "scan", "==", "NULL_RTX", ")", "scan", "=", "get_insns", "(", ")", ";", "insn", "=", "emit_insn_after", "(", "insn", ",", "scan", ")", ";", "pop_topmost_sequence", "(", ")", ";", "}", "return", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", ";", "}", ""], "natrual_language": ["If", "we", "can", "access", "small", "data", "directly", "(", "using", "gp-relative", "relocation", "operators", ")", "return", "the", "small", "data", "pointer", ",", "otherwise", "return", "null", ".", "For", "each", "mips16", "function", "which", "refers", "to", "GP", "relative", "symbols", ",", "we", "use", "a", "pseudo", "register", ",", "initialized", "at", "the", "start", "of", "the", "function", ",", "to", "hold", "the", "$", "gp", "value", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips16_gp_pseudo_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32491, "Length": 156} {"ground_truth": ["", "static", "int", "mips16_insn_length", "(", "rtx", "insn", ")", "{", "if", "(", "JUMP_P", "(", "insn", ")", ")", "{", "rtx", "body", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "body", ")", "==", "ADDR_VEC", ")", "return", "GET_MODE_SIZE", "(", "GET_MODE", "(", "body", ")", ")", "*", "XVECLEN", "(", "body", ",", "0", ")", ";", "if", "(", "GET_CODE", "(", "body", ")", "==", "ADDR_DIFF_VEC", ")", "return", "GET_MODE_SIZE", "(", "GET_MODE", "(", "body", ")", ")", "*", "XVECLEN", "(", "body", ",", "1", ")", ";", "}", "return", "get_attr_length", "(", "insn", ")", ";", "}", ""], "natrual_language": ["Return", "the", "length", "of", "instruction", "INSN", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips3", "Func": "mips16_insn_length", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32492, "Length": 82} {"ground_truth": ["", "static", "void", "mips16_lay_out_constants", "(", "void", ")", "{", "struct", "mips16_constant_pool", "pool", ";", "rtx", "insn", ",", "barrier", ";", "barrier", "=", "0", ";", "memset", "(", "&", "pool", ",", "0", ",", "sizeof", "(", "pool", ")", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "{", "if", "(", "INSN_P", "(", "insn", ")", ")", "for_each_rtx", "(", "&", "PATTERN", "(", "insn", ")", ",", "mips16_rewrite_pool_refs", ",", "&", "pool", ")", ";", "pool", ".", "insn_address", "+=", "mips16_insn_length", "(", "insn", ")", ";", "if", "(", "pool", ".", "first", "!=", "NULL", ")", "{", "if", "(", "barrier", "==", "0", "&&", "pool", ".", "insn_address", "+", "4", ">", "pool", ".", "highest_address", ")", "{", "rtx", "label", ",", "jump", ";", "label", "=", "gen_label_rtx", "(", ")", ";", "jump", "=", "emit_jump_insn_before", "(", "gen_jump", "(", "label", ")", ",", "insn", ")", ";", "JUMP_LABEL", "(", "jump", ")", "=", "label", ";", "LABEL_NUSES", "(", "label", ")", "=", "1", ";", "barrier", "=", "emit_barrier_after", "(", "jump", ")", ";", "emit_label_after", "(", "label", ",", "barrier", ")", ";", "pool", ".", "insn_address", "+=", "4", ";", "}", "if", "(", "pool", ".", "insn_address", ">", "pool", ".", "highest_address", ")", "{", "dump_constants", "(", "pool", ".", "first", ",", "barrier", ")", ";", "pool", ".", "first", "=", "NULL", ";", "barrier", "=", "0", ";", "}", "else", "if", "(", "BARRIER_P", "(", "insn", ")", ")", "barrier", "=", "insn", ";", "}", "}", "dump_constants", "(", "pool", ".", "first", ",", "get_last_insn", "(", ")", ")", ";", "}", ""], "natrual_language": ["Build", "MIPS16", "constant", "pools", "."], "TS_V_token": ["mips", "0", "0", "0", "4", "1", "4", "0"], "File": "mips3", "Func": "mips16_lay_out_constants", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32493, "Length": 222} {"ground_truth": ["", "static", "int", "mips16_rewrite_pool_refs", "(", "rtx", "*", "x", ",", "void", "*", "data", ")", "{", "struct", "mips16_constant_pool", "*", "pool", "=", "data", ";", "if", "(", "GET_CODE", "(", "*", "x", ")", "==", "SYMBOL_REF", "&&", "CONSTANT_POOL_ADDRESS_P", "(", "*", "x", ")", ")", "*", "x", "=", "gen_rtx_LABEL_REF", "(", "Pmode", ",", "add_constant", "(", "pool", ",", "get_pool_constant", "(", "*", "x", ")", ",", "get_pool_mode", "(", "*", "x", ")", ")", ")", ";", "return", "0", ";", "}", ""], "natrual_language": ["Rewrite", "*", "X", "so", "that", "constant", "pool", "references", "refer", "to", "the", "constant", "'s", "label", "instead", ".", "DATA", "points", "to", "the", "constant", "pool", "structure", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips16_rewrite_pool_refs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32494, "Length": 65} {"ground_truth": ["", "static", "int", "mips_address_cost", "(", "rtx", "addr", ")", "{", "return", "mips_address_insns", "(", "addr", ",", "SImode", ")", ";", "}", ""], "natrual_language": ["Provide", "the", "costs", "of", "an", "addressing", "mode", "that", "contains", "ADDR", ".", "If", "ADDR", "is", "not", "a", "valid", "address", ",", "its", "cost", "is", "irrelevant", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_address_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32495, "Length": 17} {"ground_truth": ["", "static", "int", "mips_adjust_cost", "(", "rtx", "insn", "ATTRIBUTE_UNUSED", ",", "rtx", "link", ",", "rtx", "dep", "ATTRIBUTE_UNUSED", ",", "int", "cost", ")", "{", "if", "(", "REG_NOTE_KIND", "(", "link", ")", "!=", "0", ")", "return", "0", ";", "return", "cost", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCHED_ADJUST_COST", ".", "We", "assume", "that", "anti", "and", "output", "dependencies", "have", "no", "cost", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_adjust_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32496, "Length": 35} {"ground_truth": ["", "int", "mips_adjust_insn_length", "(", "rtx", "insn", ",", "int", "length", ")", "{", "if", "(", "CALL_P", "(", "insn", ")", "||", "(", "TARGET_MIPS16", "?", "simplejump_p", "(", "insn", ")", ":", "JUMP_P", "(", "insn", ")", ")", ")", "length", "+=", "4", ";", "if", "(", "!", "cfun", "->", "machine", "->", "ignore_hazard_length_p", "&&", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "break", ";", "case", "HAZARD_DELAY", ":", "length", "+=", "4", ";", "break", ";", "case", "HAZARD_HILO", ":", "length", "+=", "8", ";", "break", ";", "}", "if", "(", "TARGET_MIPS16", ")", "length", "/=", "2", ";", "return", "length", ";", "}", ""], "natrual_language": ["Return", "the", "length", "of", "INSN", ".", "LENGTH", "is", "the", "initial", "length", "computed", "by", "attributes", "in", "the", "machine-description", "file", "."], "TS_V_token": ["mips", "4", "0", "4", "8", "2"], "File": "mips3", "Func": "mips_adjust_insn_length", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32497, "Length": 95} {"ground_truth": ["", "static", "void", "mips_arg_info", "(", "const", "CUMULATIVE_ARGS", "*", "cum", ",", "enum", "machine_mode", "mode", ",", "tree", "type", ",", "int", "named", ",", "struct", "mips_arg_info", "*", "info", ")", "{", "bool", "doubleword_aligned_p", ";", "unsigned", "int", "num_bytes", ",", "num_words", ",", "max_regs", ";", "num_bytes", "=", "type", "?", "int_size_in_bytes", "(", "type", ")", ":", "GET_MODE_SIZE", "(", "mode", ")", ";", "num_words", "=", "(", "num_bytes", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "switch", "(", "mips_abi", ")", "{", "case", "ABI_EABI", ":", "info", "->", "fpr_p", "=", "(", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_VECTOR_FLOAT", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_FPVALUE", ")", ";", "break", ";", "case", "ABI_32", ":", "case", "ABI_O64", ":", "info", "->", "fpr_p", "=", "(", "!", "cum", "->", "gp_reg_found", "&&", "cum", "->", "arg_number", "<", "2", "&&", "(", "type", "==", "0", "||", "SCALAR_FLOAT_TYPE_P", "(", "type", ")", "||", "VECTOR_FLOAT_TYPE_P", "(", "type", ")", ")", "&&", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_VECTOR_FLOAT", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_FPVALUE", ")", ";", "break", ";", "case", "ABI_N32", ":", "case", "ABI_64", ":", "info", "->", "fpr_p", "=", "(", "named", "&&", "(", "type", "==", "0", "||", "FLOAT_TYPE_P", "(", "type", ")", ")", "&&", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_VECTOR_FLOAT", ")", "&&", "GET_MODE_UNIT_SIZE", "(", "mode", ")", "<=", "UNITS_PER_FPVALUE", ")", ";", "if", "(", "info", "->", "fpr_p", "&&", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", "&&", "GET_MODE_UNIT_SIZE", "(", "mode", ")", "<", "UNITS_PER_FPVALUE", ")", "{", "if", "(", "cum", "->", "num_gprs", ">=", "MAX_ARGS_IN_REGISTERS", "-", "1", ")", "info", "->", "fpr_p", "=", "false", ";", "else", "num_words", "=", "2", ";", "}", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "doubleword_aligned_p", "=", "FUNCTION_ARG_BOUNDARY", "(", "mode", ",", "type", ")", ">", "BITS_PER_WORD", ";", "info", "->", "reg_offset", "=", "(", "mips_abi", "==", "ABI_EABI", "&&", "info", "->", "fpr_p", "?", "cum", "->", "num_fprs", ":", "cum", "->", "num_gprs", ")", ";", "if", "(", "doubleword_aligned_p", ")", "info", "->", "reg_offset", "+=", "info", "->", "reg_offset", "&", "1", ";", "info", "->", "stack_offset", "=", "cum", "->", "stack_words", ";", "if", "(", "doubleword_aligned_p", ")", "info", "->", "stack_offset", "+=", "info", "->", "stack_offset", "&", "1", ";", "max_regs", "=", "MAX_ARGS_IN_REGISTERS", "-", "info", "->", "reg_offset", ";", "info", "->", "reg_words", "=", "MIN", "(", "num_words", ",", "max_regs", ")", ";", "info", "->", "stack_words", "=", "num_words", "-", "info", "->", "reg_words", ";", "}", ""], "natrual_language": ["Fill", "INFO", "with", "information", "about", "a", "single", "argument", ".", "CUM", "is", "the", "cumulative", "state", "for", "earlier", "arguments", ".", "MODE", "is", "the", "mode", "of", "this", "argument", "and", "TYPE", "is", "its", "type", "(", "if", "known", ")", ".", "NAMED", "is", "true", "if", "this", "is", "a", "named", "(", "fixed", ")", "argument", "rather", "than", "a", "variable", "one", "."], "TS_V_token": ["mips", "1", "2", "0", "0", "1", "2", "1", "1"], "File": "mips3", "Func": "mips_arg_info", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32498, "Length": 371} {"ground_truth": ["", "static", "int", "mips_arg_partial_bytes", "(", "CUMULATIVE_ARGS", "*", "cum", ",", "enum", "machine_mode", "mode", ",", "tree", "type", ",", "bool", "named", ")", "{", "struct", "mips_arg_info", "info", ";", "mips_arg_info", "(", "cum", ",", "mode", ",", "type", ",", "named", ",", "&", "info", ")", ";", "return", "info", ".", "stack_words", ">", "0", "?", "info", ".", "reg_words", "*", "UNITS_PER_WORD", ":", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ARG_PARTIAL_BYTES", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_arg_partial_bytes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32499, "Length": 53} {"ground_truth": ["", "static", "void", "mips_avoid_hazard", "(", "rtx", "after", ",", "rtx", "insn", ",", "int", "*", "hilo_delay", ",", "rtx", "*", "delayed_reg", ",", "rtx", "lo_reg", ")", "{", "rtx", "pattern", ",", "set", ";", "int", "nops", ",", "ninsns", ";", "if", "(", "!", "INSN_P", "(", "insn", ")", ")", "return", ";", "pattern", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "pattern", ")", "==", "ASM_INPUT", "||", "asm_noperands", "(", "pattern", ")", ">=", "0", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "ninsns", "=", "get_attr_length", "(", "insn", ")", "/", "4", ";", "if", "(", "ninsns", "==", "0", ")", "return", ";", "if", "(", "*", "hilo_delay", "<", "2", "&&", "reg_set_p", "(", "lo_reg", ",", "pattern", ")", ")", "nops", "=", "2", "-", "*", "hilo_delay", ";", "else", "if", "(", "*", "delayed_reg", "!=", "0", "&&", "reg_referenced_p", "(", "*", "delayed_reg", ",", "pattern", ")", ")", "nops", "=", "1", ";", "else", "nops", "=", "0", ";", "*", "hilo_delay", "+=", "nops", ";", "while", "(", "nops", "--", ">", "0", ")", "emit_insn_after", "(", "gen_hazard_nop", "(", ")", ",", "after", ")", ";", "*", "hilo_delay", "+=", "ninsns", ";", "*", "delayed_reg", "=", "0", ";", "if", "(", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "break", ";", "case", "HAZARD_HILO", ":", "*", "hilo_delay", "=", "0", ";", "break", ";", "case", "HAZARD_DELAY", ":", "set", "=", "single_set", "(", "insn", ")", ";", "gcc_assert", "(", "set", "!=", "0", ")", ";", "*", "delayed_reg", "=", "SET_DEST", "(", "set", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Subroutine", "of", "mips_reorg", ".", "If", "there", "is", "a", "hazard", "between", "INSN", "and", "a", "previous", "instruction", ",", "avoid", "it", "by", "inserting", "nops", "after", "instruction", "AFTER", ".", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "describe", "the", "hazards", "that", "apply", "at", "this", "point", ".", "If", "*", "DELAYED_REG", "is", "non-null", ",", "INSN", "must", "wait", "a", "cycle", "before", "using", "the", "value", "of", "that", "register", ".", "*", "HILO_DELAY", "counts", "the", "number", "of", "instructions", "since", "the", "last", "hilo", "hazard", "(", "that", "is", ",", "the", "number", "of", "instructions", "since", "the", "last", "mflo", "or", "mfhi", ")", ".", "After", "inserting", "nops", "for", "INSN", ",", "update", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "for", "the", "next", "instruction", ".", "LO_REG", "is", "an", "rtx", "for", "the", "LO", "register", ",", "used", "in", "dependence", "checking", "."], "TS_V_token": ["mips", "0", "4", "0", "2", "2", "0", "1", "0", "0", "0", "0", "0", "0"], "File": "mips3", "Func": "mips_avoid_hazard", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32500, "Length": 228} {"ground_truth": ["", "static", "void", "mips_avoid_hazards", "(", "void", ")", "{", "rtx", "insn", ",", "last_insn", ",", "lo_reg", ",", "delayed_reg", ";", "int", "hilo_delay", ",", "i", ";", "split_all_insns_noflow", "(", ")", ";", "cfun", "->", "machine", "->", "ignore_hazard_length_p", "=", "true", ";", "shorten_branches", "(", "get_insns", "(", ")", ")", ";", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "true", ";", "if", "(", "current_function_profile", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "if", "(", "TARGET_FIX_VR4120", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "if", "(", "TARGET_FIX_VR4130", "&&", "!", "ISA_HAS_MACCHI", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "last_insn", "=", "0", ";", "hilo_delay", "=", "2", ";", "delayed_reg", "=", "0", ";", "lo_reg", "=", "gen_rtx_REG", "(", "SImode", ",", "LO_REGNUM", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", "!=", "0", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "if", "(", "INSN_P", "(", "insn", ")", ")", "{", "if", "(", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "SEQUENCE", ")", "for", "(", "i", "=", "0", ";", "i", "<", "XVECLEN", "(", "PATTERN", "(", "insn", ")", ",", "0", ")", ";", "i", "++", ")", "mips_avoid_hazard", "(", "last_insn", ",", "XVECEXP", "(", "PATTERN", "(", "insn", ")", ",", "0", ",", "i", ")", ",", "&", "hilo_delay", ",", "&", "delayed_reg", ",", "lo_reg", ")", ";", "else", "mips_avoid_hazard", "(", "last_insn", ",", "insn", ",", "&", "hilo_delay", ",", "&", "delayed_reg", ",", "lo_reg", ")", ";", "last_insn", "=", "insn", ";", "}", "}", ""], "natrual_language": ["Go", "through", "the", "instruction", "stream", "and", "insert", "nops", "where", "necessary", ".", "See", "if", "the", "whole", "function", "can", "then", "be", "put", "into", ".set", "noreorder", "&", ".set", "nomacro", "."], "TS_V_token": ["mips", "0", "2", "0", "0", "0", "0", "0"], "File": "mips3", "Func": "mips_avoid_hazards", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32501, "Length": 215} {"ground_truth": ["", "static", "void", "mips_block_move_loop", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ")", "{", "rtx", "label", ",", "src_reg", ",", "dest_reg", ",", "final_src", ";", "HOST_WIDE_INT", "leftover", ";", "leftover", "=", "length", "%", "MAX_MOVE_BYTES", ";", "length", "-=", "leftover", ";", "mips_adjust_block_mem", "(", "src", ",", "MAX_MOVE_BYTES", ",", "&", "src_reg", ",", "&", "src", ")", ";", "mips_adjust_block_mem", "(", "dest", ",", "MAX_MOVE_BYTES", ",", "&", "dest_reg", ",", "&", "dest", ")", ";", "final_src", "=", "expand_simple_binop", "(", "Pmode", ",", "PLUS", ",", "src_reg", ",", "GEN_INT", "(", "length", ")", ",", "0", ",", "0", ",", "OPTAB_WIDEN", ")", ";", "label", "=", "gen_label_rtx", "(", ")", ";", "emit_label", "(", "label", ")", ";", "mips_block_move_straight", "(", "dest", ",", "src", ",", "MAX_MOVE_BYTES", ")", ";", "emit_move_insn", "(", "src_reg", ",", "plus_constant", "(", "src_reg", ",", "MAX_MOVE_BYTES", ")", ")", ";", "emit_move_insn", "(", "dest_reg", ",", "plus_constant", "(", "dest_reg", ",", "MAX_MOVE_BYTES", ")", ")", ";", "if", "(", "Pmode", "==", "DImode", ")", "emit_insn", "(", "gen_cmpdi", "(", "src_reg", ",", "final_src", ")", ")", ";", "else", "emit_insn", "(", "gen_cmpsi", "(", "src_reg", ",", "final_src", ")", ")", ";", "emit_jump_insn", "(", "gen_bne", "(", "label", ")", ")", ";", "if", "(", "leftover", ")", "mips_block_move_straight", "(", "dest", ",", "src", ",", "leftover", ")", ";", "}", ""], "natrual_language": ["Move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", "using", "a", "loop", "that", "moves", "MAX_MOVE_BYTES", "per", "iteration", ".", "LENGTH", "must", "be", "at", "least", "MAX_MOVE_BYTES", ".", "Assume", "that", "the", "memory", "regions", "do", "not", "overlap", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_block_move_loop", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32502, "Length": 177} {"ground_truth": ["", "static", "void", "mips_block_move_straight", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ")", "{", "HOST_WIDE_INT", "offset", ",", "delta", ";", "unsigned", "HOST_WIDE_INT", "bits", ";", "int", "i", ";", "enum", "machine_mode", "mode", ";", "rtx", "*", "regs", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", "==", "BITS_PER_WORD", "/", "2", "&&", "MEM_ALIGN", "(", "dest", ")", "==", "BITS_PER_WORD", "/", "2", ")", "bits", "=", "BITS_PER_WORD", "/", "2", ";", "else", "bits", "=", "BITS_PER_WORD", ";", "mode", "=", "mode_for_size", "(", "bits", ",", "MODE_INT", ",", "0", ")", ";", "delta", "=", "bits", "/", "BITS_PER_UNIT", ";", "regs", "=", "alloca", "(", "sizeof", "(", "rtx", ")", "*", "length", "/", "delta", ")", ";", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "{", "regs", "[", "i", "]", "=", "gen_reg_rtx", "(", "mode", ")", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", ">=", "bits", ")", "emit_move_insn", "(", "regs", "[", "i", "]", ",", "adjust_address", "(", "src", ",", "mode", ",", "offset", ")", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "if", "(", "!", "mips_expand_unaligned_load", "(", "regs", "[", "i", "]", ",", "part", ",", "bits", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "}", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "if", "(", "MEM_ALIGN", "(", "dest", ")", ">=", "bits", ")", "emit_move_insn", "(", "adjust_address", "(", "dest", ",", "mode", ",", "offset", ")", ",", "regs", "[", "i", "]", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "if", "(", "!", "mips_expand_unaligned_store", "(", "part", ",", "regs", "[", "i", "]", ",", "bits", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "offset", "<", "length", ")", "{", "src", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "dest", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "move_by_pieces", "(", "dest", ",", "src", ",", "length", "-", "offset", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ",", "0", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "straight-line", "code", "to", "move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", ".", "Assume", "that", "the", "areas", "do", "not", "overlap", "."], "TS_V_token": ["mips", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips3", "Func": "mips_block_move_straight", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32503, "Length": 335} {"ground_truth": ["", "static", "tree", "mips_build_builtin_va_list", "(", "void", ")", "{", "if", "(", "EABI_FLOAT_VARARGS_P", ")", "{", "tree", "f_ovfl", ",", "f_gtop", ",", "f_ftop", ",", "f_goff", ",", "f_foff", ",", "f_res", ",", "record", ";", "tree", "array", ",", "index", ";", "record", "=", "(", "*", "lang_hooks", ".", "types", ".", "make_type", ")", "(", "RECORD_TYPE", ")", ";", "f_ovfl", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__overflow_argptr\"", ")", ",", "ptr_type_node", ")", ";", "f_gtop", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__gpr_top\"", ")", ",", "ptr_type_node", ")", ";", "f_ftop", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__fpr_top\"", ")", ",", "ptr_type_node", ")", ";", "f_goff", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__gpr_offset\"", ")", ",", "unsigned_char_type_node", ")", ";", "f_foff", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__fpr_offset\"", ")", ",", "unsigned_char_type_node", ")", ";", "index", "=", "build_int_cst", "(", "NULL_TREE", ",", "GET_MODE_SIZE", "(", "ptr_mode", ")", "-", "2", "-", "1", ")", ";", "array", "=", "build_array_type", "(", "unsigned_char_type_node", ",", "build_index_type", "(", "index", ")", ")", ";", "f_res", "=", "build_decl", "(", "FIELD_DECL", ",", "get_identifier", "(", "\"__reserved\"", ")", ",", "array", ")", ";", "DECL_FIELD_CONTEXT", "(", "f_ovfl", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_gtop", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_ftop", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_goff", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_foff", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_res", ")", "=", "record", ";", "TYPE_FIELDS", "(", "record", ")", "=", "f_ovfl", ";", "TREE_CHAIN", "(", "f_ovfl", ")", "=", "f_gtop", ";", "TREE_CHAIN", "(", "f_gtop", ")", "=", "f_ftop", ";", "TREE_CHAIN", "(", "f_ftop", ")", "=", "f_goff", ";", "TREE_CHAIN", "(", "f_goff", ")", "=", "f_foff", ";", "TREE_CHAIN", "(", "f_foff", ")", "=", "f_res", ";", "layout_type", "(", "record", ")", ";", "return", "record", ";", "}", "else", "if", "(", "TARGET_IRIX", "&&", "TARGET_IRIX6", ")", "return", "build_pointer_type", "(", "char_type_node", ")", ";", "else", "return", "ptr_type_node", ";", "}", ""], "natrual_language": ["Create", "the", "va_list", "data", "type", ".", "We", "keep", "3", "pointers", ",", "and", "two", "offsets", ".", "Two", "pointers", "are", "to", "the", "overflow", "area", ",", "which", "starts", "at", "the", "CFA", ".", "One", "of", "these", "is", "constant", ",", "for", "addressing", "into", "the", "GPR", "save", "area", "below", "it", ".", "The", "other", "is", "advanced", "up", "the", "stack", "through", "the", "overflow", "region", ".", "The", "third", "pointer", "is", "to", "the", "GPR", "save", "area", ".", "Since", "the", "FPR", "save", "area", "is", "just", "below", "it", ",", "we", "can", "address", "FPR", "slots", "off", "this", "pointer", ".", "We", "also", "keep", "two", "one-byte", "offsets", ",", "which", "are", "to", "be", "subtracted", "from", "the", "constant", "pointers", "to", "yield", "addresses", "in", "the", "GPR", "and", "FPR", "save", "areas", ".", "These", "are", "downcounted", "as", "float", "or", "non-float", "arguments", "are", "used", ",", "and", "when", "they", "get", "to", "zero", ",", "the", "argument", "must", "be", "obtained", "from", "the", "overflow", "region", ".", "If", "!", "EABI_FLOAT_VARARGS_P", ",", "then", "no", "FPR", "save", "area", "exists", ",", "and", "a", "single", "pointer", "is", "enough", ".", "It", "'s", "started", "at", "the", "GPR", "save", "area", ",", "and", "is", "advanced", ",", "period", ".", "Note", "that", "the", "GPR", "save", "area", "is", "not", "constant", "size", ",", "due", "to", "optimization", "in", "the", "prologue", ".", "Hence", ",", "we", "ca", "n't", "use", "a", "design", "with", "two", "pointers", "and", "two", "offsets", ",", "although", "we", "could", "have", "designed", "this", "with", "two", "pointers", "and", "three", "offsets", "."], "TS_V_token": ["mips", "\"__overflow_argptr\"", "\"__gpr_top\"", "\"__fpr_top\"", "\"__gpr_offset\"", "\"__fpr_offset\"", "2", "1", "\"__reserved\""], "File": "mips3", "Func": "mips_build_builtin_va_list", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32504, "Length": 269} {"ground_truth": ["", "static", "rtx", "mips_call_tls_get_addr", "(", "rtx", "sym", ",", "enum", "mips_symbol_type", "type", ",", "rtx", "v0", ")", "{", "rtx", "insn", ",", "loc", ",", "tga", ",", "a0", ";", "a0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "!", "mips_tls_symbol", ")", "mips_tls_symbol", "=", "init_one_libfunc", "(", "\"__tls_get_addr\"", ")", ";", "loc", "=", "mips_unspec_address", "(", "sym", ",", "type", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "Pmode", ",", "a0", ",", "gen_rtx_LO_SUM", "(", "Pmode", ",", "pic_offset_table_rtx", ",", "loc", ")", ")", ")", ";", "tga", "=", "gen_rtx_MEM", "(", "Pmode", ",", "mips_tls_symbol", ")", ";", "insn", "=", "emit_call_insn", "(", "gen_call_value", "(", "v0", ",", "tga", ",", "const0_rtx", ",", "const0_rtx", ")", ")", ";", "CONST_OR_PURE_CALL_P", "(", "insn", ")", "=", "1", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "v0", ")", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "a0", ")", ";", "insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "return", "insn", ";", "}", ""], "natrual_language": ["Return", "an", "instruction", "sequence", "that", "calls", "__tls_get_addr", ".", "SYM", "is", "the", "TLS", "symbol", "we", "are", "referencing", "and", "TYPE", "is", "the", "symbol", "type", "to", "use", "(", "either", "global", "dynamic", "or", "local", "dynamic", ")", ".", "V0", "is", "an", "RTX", "for", "the", "return", "value", "location", "."], "TS_V_token": ["mips", "\"__tls_get_addr\"", "1"], "File": "mips3", "Func": "mips_call_tls_get_addr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32505, "Length": 145} {"ground_truth": ["", "bool", "mips_cannot_change_mode_class", "(", "enum", "machine_mode", "from", ",", "enum", "machine_mode", "to", ",", "enum", "reg_class", "class", ")", "{", "if", "(", "MIN", "(", "GET_MODE_SIZE", "(", "from", ")", ",", "GET_MODE_SIZE", "(", "to", ")", ")", "<=", "UNITS_PER_WORD", "&&", "MAX", "(", "GET_MODE_SIZE", "(", "from", ")", ",", "GET_MODE_SIZE", "(", "to", ")", ")", ">", "UNITS_PER_WORD", ")", "{", "if", "(", "TARGET_BIG_ENDIAN", ")", "{", "if", "(", "FP_INC", ">", "1", "&&", "reg_classes_intersect_p", "(", "FP_REGS", ",", "class", ")", ")", "return", "true", ";", "}", "else", "{", "if", "(", "reg_classes_intersect_p", "(", "ACC_REGS", ",", "class", ")", ")", "return", "true", ";", "}", "}", "if", "(", "TARGET_FLOAT64", "&&", "from", "==", "SImode", "&&", "GET_MODE_SIZE", "(", "to", ")", ">=", "UNITS_PER_WORD", "&&", "reg_classes_intersect_p", "(", "FP_REGS", ",", "class", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "CANNOT_CHANGE_MODE_CLASS", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips_cannot_change_mode_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32506, "Length": 116} {"ground_truth": ["", "static", "bool", "mips_canonicalize_comparison", "(", "enum", "rtx_code", "*", "code", ",", "rtx", "*", "cmp1", ",", "enum", "machine_mode", "mode", ")", "{", "HOST_WIDE_INT", "original", ",", "plus_one", ";", "if", "(", "GET_CODE", "(", "*", "cmp1", ")", "!=", "CONST_INT", ")", "return", "false", ";", "original", "=", "INTVAL", "(", "*", "cmp1", ")", ";", "plus_one", "=", "trunc_int_for_mode", "(", "(", "unsigned", "HOST_WIDE_INT", ")", "original", "+", "1", ",", "mode", ")", ";", "switch", "(", "*", "code", ")", "{", "case", "LE", ":", "if", "(", "original", "<", "plus_one", ")", "{", "*", "code", "=", "LT", ";", "*", "cmp1", "=", "force_reg", "(", "mode", ",", "GEN_INT", "(", "plus_one", ")", ")", ";", "return", "true", ";", "}", "break", ";", "case", "LEU", ":", "if", "(", "plus_one", "!=", "0", ")", "{", "*", "code", "=", "LTU", ";", "*", "cmp1", "=", "force_reg", "(", "mode", ",", "GEN_INT", "(", "plus_one", ")", ")", ";", "return", "true", ";", "}", "break", ";", "default", ":", "return", "false", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Canonicalize", "LE", "or", "LEU", "comparisons", "into", "LT", "comparisons", "when", "possible", "to", "avoid", "extra", "instructions", "or", "inverting", "the", "comparison", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips3", "Func": "mips_canonicalize_comparison", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32507, "Length": 143} {"ground_truth": ["", "int", "mips_can_use_return_insn", "(", "void", ")", "{", "tree", "return_type", ";", "if", "(", "!", "reload_completed", ")", "return", "0", ";", "if", "(", "regs_ever_live", "[", "31", "]", "||", "current_function_profile", ")", "return", "0", ";", "return_type", "=", "DECL_RESULT", "(", "current_function_decl", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "mips16_hard_float", "&&", "!", "aggregate_value_p", "(", "return_type", ",", "current_function_decl", ")", "&&", "GET_MODE_CLASS", "(", "DECL_MODE", "(", "return_type", ")", ")", "==", "MODE_FLOAT", "&&", "GET_MODE_SIZE", "(", "DECL_MODE", "(", "return_type", ")", ")", "<=", "UNITS_PER_FPVALUE", ")", "return", "0", ";", "if", "(", "cfun", "->", "machine", "->", "frame", ".", "initialized", ")", "return", "cfun", "->", "machine", "->", "frame", ".", "total_size", "==", "0", ";", "return", "compute_frame_size", "(", "get_frame_size", "(", ")", ")", "==", "0", ";", "}", ""], "natrual_language": ["Return", "nonzero", "if", "this", "function", "is", "known", "to", "have", "a", "null", "epilogue", ".", "This", "allows", "the", "optimizer", "to", "omit", "jumps", "to", "jumps", "if", "no", "stack", "was", "created", "."], "TS_V_token": ["mips", "0", "31", "0", "0", "0", "0"], "File": "mips3", "Func": "mips_can_use_return_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32508, "Length": 105} {"ground_truth": ["", "int", "mips_class_max_nregs", "(", "enum", "reg_class", "class", "ATTRIBUTE_UNUSED", ",", "enum", "machine_mode", "mode", ")", "{", "if", "(", "class", "==", "ST_REGS", ")", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "3", ")", "/", "4", ";", "else", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "}", ""], "natrual_language": ["Implement", "CLASS_MAX_NREGS", ".", "Usually", "all", "registers", "are", "word-sized", ".", "The", "only", "supported", "exception", "is", "-mgp64", "-msingle-float", ",", "which", "has", "64-bit", "words", "but", "32-bit", "float", "registers", ".", "A", "word-based", "calculation", "is", "correct", "even", "in", "that", "case", ",", "since", "-msingle-float", "disallows", "multi-FPR", "values", ".", "The", "FP", "status", "registers", "are", "an", "exception", "to", "this", "rule", ".", "They", "are", "always", "4", "bytes", "wide", "as", "they", "only", "hold", "condition", "code", "modes", ",", "and", "CCmode", "is", "always", "considered", "to", "be", "4", "bytes", "wide", "."], "TS_V_token": ["mips", "3", "4", "1"], "File": "mips3", "Func": "mips_class_max_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32509, "Length": 47} {"ground_truth": ["", "void", "mips_conditional_register_usage", "(", "void", ")", "{", "if", "(", "!", "TARGET_DSP", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "DSP_ACC_REG_FIRST", ";", "regno", "<=", "DSP_ACC_REG_LAST", ";", "regno", "++", ")", "fixed_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "!", "TARGET_HARD_FLOAT", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", ";", "regno", "<=", "FP_REG_LAST", ";", "regno", "++", ")", "fixed_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "for", "(", "regno", "=", "ST_REG_FIRST", ";", "regno", "<=", "ST_REG_LAST", ";", "regno", "++", ")", "fixed_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "else", "if", "(", "!", "ISA_HAS_8CC", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "ST_REG_FIRST", ";", "regno", "<=", "ST_REG_LAST", ";", "regno", "++", ")", "fixed_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "TARGET_MIPS16", ")", "{", "fixed_regs", "[", "18", "]", "=", "call_used_regs", "[", "18", "]", "=", "1", ";", "fixed_regs", "[", "19", "]", "=", "call_used_regs", "[", "19", "]", "=", "1", ";", "fixed_regs", "[", "20", "]", "=", "call_used_regs", "[", "20", "]", "=", "1", ";", "fixed_regs", "[", "21", "]", "=", "call_used_regs", "[", "21", "]", "=", "1", ";", "fixed_regs", "[", "22", "]", "=", "call_used_regs", "[", "22", "]", "=", "1", ";", "fixed_regs", "[", "23", "]", "=", "call_used_regs", "[", "23", "]", "=", "1", ";", "fixed_regs", "[", "26", "]", "=", "call_used_regs", "[", "26", "]", "=", "1", ";", "fixed_regs", "[", "27", "]", "=", "call_used_regs", "[", "27", "]", "=", "1", ";", "fixed_regs", "[", "30", "]", "=", "call_used_regs", "[", "30", "]", "=", "1", ";", "}", "if", "(", "mips_abi", "==", "ABI_64", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", "+", "20", ";", "regno", "<", "FP_REG_FIRST", "+", "24", ";", "regno", "++", ")", "call_really_used_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "mips_abi", "==", "ABI_N32", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", "+", "21", ";", "regno", "<=", "FP_REG_FIRST", "+", "31", ";", "regno", "+=", "2", ")", "call_really_used_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "}", ""], "natrual_language": ["Implement", "CONDITIONAL_REGISTER_USAGE", "."], "TS_V_token": ["mips", "1", "1", "1", "1", "18", "18", "1", "19", "19", "1", "20", "20", "1", "21", "21", "1", "22", "22", "1", "23", "23", "1", "26", "26", "1", "27", "27", "1", "30", "30", "1", "20", "24", "1", "21", "31", "2", "1"], "File": "mips3", "Func": "mips_conditional_register_usage", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32510, "Length": 333} {"ground_truth": ["", "static", "const", "struct", "mips_cpu_info", "*", "mips_cpu_info_from_isa", "(", "int", "isa", ")", "{", "const", "struct", "mips_cpu_info", "*", "p", ";", "for", "(", "p", "=", "mips_cpu_info_table", ";", "p", "->", "name", "!=", "0", ";", "p", "++", ")", "if", "(", "p", "->", "isa", "==", "isa", ")", "return", "p", ";", "return", "0", ";", "}", ""], "natrual_language": ["Return", "the", "processor", "associated", "with", "the", "given", "ISA", "level", ",", "or", "null", "if", "the", "ISA", "is", "n't", "valid", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_cpu_info_from_isa", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32511, "Length": 47} {"ground_truth": ["", "bool", "mips_dangerous_for_la25_p", "(", "rtx", "x", ")", "{", "HOST_WIDE_INT", "offset", ";", "if", "(", "TARGET_EXPLICIT_RELOCS", ")", "return", "false", ";", "mips_split_const", "(", "x", ",", "&", "x", ",", "&", "offset", ")", ";", "return", "global_got_operand", "(", "x", ",", "VOIDmode", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "should", "not", "be", "moved", "directly", "into", "register", "$", "25", ".", "We", "need", "this", "because", "many", "versions", "of", "GAS", "will", "treat", "``", "la", "$", "25", ",", "foo", "''", "as", "part", "of", "a", "call", "sequence", "and", "so", "allow", "a", "global", "``", "foo", "''", "to", "be", "lazily", "bound", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_dangerous_for_la25_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32512, "Length": 37} {"ground_truth": ["", "HOST_WIDE_INT", "mips_debugger_offset", "(", "rtx", "addr", ",", "HOST_WIDE_INT", "offset", ")", "{", "rtx", "offset2", "=", "const0_rtx", ";", "rtx", "reg", "=", "eliminate_constant_term", "(", "addr", ",", "&", "offset2", ")", ";", "if", "(", "offset", "==", "0", ")", "offset", "=", "INTVAL", "(", "offset2", ")", ";", "if", "(", "reg", "==", "stack_pointer_rtx", "||", "reg", "==", "frame_pointer_rtx", "||", "reg", "==", "hard_frame_pointer_rtx", ")", "{", "HOST_WIDE_INT", "frame_size", "=", "(", "!", "cfun", "->", "machine", "->", "frame", ".", "initialized", ")", "?", "compute_frame_size", "(", "get_frame_size", "(", ")", ")", ":", "cfun", "->", "machine", "->", "frame", ".", "total_size", ";", "if", "(", "frame_pointer_needed", "&&", "TARGET_MIPS16", ")", "frame_size", "-=", "cfun", "->", "machine", "->", "frame", ".", "args_size", ";", "offset", "=", "offset", "-", "frame_size", ";", "}", "else", "if", "(", "reg", "!=", "arg_pointer_rtx", ")", "fatal_insn", "(", "\"mips_debugger_offset called with non stack/frame/arg pointer\"", ",", "addr", ")", ";", "return", "offset", ";", "}", ""], "natrual_language": ["The", "MIPS", "debug", "format", "wants", "all", "automatic", "variables", "and", "arguments", "to", "be", "in", "terms", "of", "the", "virtual", "frame", "pointer", "(", "stack", "pointer", "before", "any", "adjustment", "in", "the", "function", ")", ",", "while", "the", "MIPS", "3.0", "linker", "wants", "the", "frame", "pointer", "to", "be", "the", "stack", "pointer", "after", "the", "initial", "adjustment", ".", "So", ",", "we", "do", "the", "adjustment", "here", ".", "The", "arg", "pointer", "(", "which", "is", "eliminated", ")", "points", "to", "the", "virtual", "frame", "pointer", ",", "while", "the", "frame", "pointer", "(", "which", "may", "be", "eliminated", ")", "points", "to", "the", "stack", "pointer", "after", "the", "initial", "adjustments", "."], "TS_V_token": ["mips", "0", "\"mips_debugger_offset called with non stack/frame/arg pointer\""], "File": "mips3", "Func": "mips_debugger_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32513, "Length": 124} {"ground_truth": ["", "void", "mips_declare_object_name", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ",", "tree", "decl", "ATTRIBUTE_UNUSED", ")", "{", "ASM_OUTPUT_TYPE_DIRECTIVE", "(", "stream", ",", "name", ",", "\"object\"", ")", ";", "size_directive_output", "=", "0", ";", "if", "(", "!", "flag_inhibit_size_directive", "&&", "DECL_SIZE", "(", "decl", ")", ")", "{", "HOST_WIDE_INT", "size", ";", "size_directive_output", "=", "1", ";", "size", "=", "int_size_in_bytes", "(", "TREE_TYPE", "(", "decl", ")", ")", ";", "ASM_OUTPUT_SIZE_DIRECTIVE", "(", "stream", ",", "name", ",", "size", ")", ";", "}", "mips_declare_object", "(", "stream", ",", "name", ",", "\"\"", ",", "\":\\n\"", ")", ";", "}", ""], "natrual_language": ["Implement", "ASM_DECLARE_OBJECT_NAME", ".", "This", "is", "like", "most", "of", "the", "standard", "ELF", "definitions", "except", "that", "it", "uses", "mips_declare_object", "(", ")", "to", "emit", "the", "label", "."], "TS_V_token": ["mips", "\"object\"", "0", "1", "\"\"", "\":\\n\""], "File": "mips3", "Func": "mips_declare_object_name", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32514, "Length": 80} {"ground_truth": ["", "static", "void", "mips_emit_binary", "(", "enum", "rtx_code", "code", ",", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "target", ",", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "target", ")", ",", "op0", ",", "op1", ")", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "an", "instruction", "of", "the", "form", "(", "set", "TARGET", "(", "CODE", "OP0", "OP1", ")", ")", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_emit_binary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32515, "Length": 43} {"ground_truth": ["", "static", "void", "mips_emit_compare", "(", "enum", "rtx_code", "*", "code", ",", "rtx", "*", "op0", ",", "rtx", "*", "op1", ",", "bool", "need_eq_ne_p", ")", "{", "if", "(", "GET_MODE_CLASS", "(", "GET_MODE", "(", "cmp_operands", "[", "0", "]", ")", ")", "==", "MODE_INT", ")", "{", "if", "(", "!", "need_eq_ne_p", "&&", "cmp_operands", "[", "1", "]", "==", "const0_rtx", ")", "{", "*", "op0", "=", "cmp_operands", "[", "0", "]", ";", "*", "op1", "=", "cmp_operands", "[", "1", "]", ";", "}", "else", "if", "(", "*", "code", "==", "EQ", "||", "*", "code", "==", "NE", ")", "{", "if", "(", "need_eq_ne_p", ")", "{", "*", "op0", "=", "mips_zero_if_equal", "(", "cmp_operands", "[", "0", "]", ",", "cmp_operands", "[", "1", "]", ")", ";", "*", "op1", "=", "const0_rtx", ";", "}", "else", "{", "*", "op0", "=", "cmp_operands", "[", "0", "]", ";", "*", "op1", "=", "force_reg", "(", "GET_MODE", "(", "*", "op0", ")", ",", "cmp_operands", "[", "1", "]", ")", ";", "}", "}", "else", "{", "bool", "invert", "=", "false", ";", "*", "op0", "=", "gen_reg_rtx", "(", "GET_MODE", "(", "cmp_operands", "[", "0", "]", ")", ")", ";", "*", "op1", "=", "const0_rtx", ";", "mips_emit_int_relational", "(", "*", "code", ",", "&", "invert", ",", "*", "op0", ",", "cmp_operands", "[", "0", "]", ",", "cmp_operands", "[", "1", "]", ")", ";", "*", "code", "=", "(", "invert", "?", "EQ", ":", "NE", ")", ";", "}", "}", "else", "{", "enum", "rtx_code", "cmp_code", ";", "switch", "(", "*", "code", ")", "{", "case", "NE", ":", "case", "LTGT", ":", "case", "ORDERED", ":", "cmp_code", "=", "reverse_condition_maybe_unordered", "(", "*", "code", ")", ";", "*", "code", "=", "EQ", ";", "break", ";", "default", ":", "cmp_code", "=", "*", "code", ";", "*", "code", "=", "NE", ";", "break", ";", "}", "*", "op0", "=", "(", "ISA_HAS_8CC", "?", "gen_reg_rtx", "(", "CCmode", ")", ":", "gen_rtx_REG", "(", "CCmode", ",", "FPSW_REGNUM", ")", ")", ";", "*", "op1", "=", "const0_rtx", ";", "mips_emit_binary", "(", "cmp_code", ",", "*", "op0", ",", "cmp_operands", "[", "0", "]", ",", "cmp_operands", "[", "1", "]", ")", ";", "}", "}", ""], "natrual_language": ["Convert", "a", "comparison", "into", "something", "that", "can", "be", "used", "in", "a", "branch", "or", "conditional", "move", ".", "On", "entry", ",", "*", "OP0", "and", "*", "OP1", "are", "the", "values", "being", "compared", "and", "*", "CODE", "is", "the", "code", "used", "to", "compare", "them", ".", "Update", "*", "CODE", ",", "*", "OP0", "and", "*", "OP1", "so", "that", "they", "describe", "the", "final", "comparison", ".", "If", "NEED_EQ_NE_P", ",", "then", "only", "EQ", "or", "NE", "comparisons", "against", "zero", "are", "possible", ",", "otherwise", "any", "standard", "branch", "condition", "can", "be", "used", ".", "The", "standard", "branch", "conditions", "are", ":", "-", "EQ", "or", "NE", "between", "two", "registers", ".", "-", "any", "comparison", "between", "a", "register", "and", "zero", "."], "TS_V_token": ["mips", "0", "1", "0", "1", "0", "1", "0", "1", "0", "0", "1", "0", "1"], "File": "mips3", "Func": "mips_emit_compare", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32516, "Length": 293} {"ground_truth": ["", "void", "mips_emit_fcc_reload", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "scratch", ")", "{", "rtx", "fp1", ",", "fp2", ";", "if", "(", "MEM_P", "(", "src", ")", ")", "src", "=", "adjust_address", "(", "src", ",", "SFmode", ",", "0", ")", ";", "else", "if", "(", "REG_P", "(", "src", ")", "||", "GET_CODE", "(", "src", ")", "==", "SUBREG", ")", "src", "=", "gen_rtx_REG", "(", "SFmode", ",", "true_regnum", "(", "src", ")", ")", ";", "fp1", "=", "gen_rtx_REG", "(", "SFmode", ",", "REGNO", "(", "scratch", ")", ")", ";", "fp2", "=", "gen_rtx_REG", "(", "SFmode", ",", "REGNO", "(", "scratch", ")", "+", "FP_INC", ")", ";", "emit_move_insn", "(", "copy_rtx", "(", "fp1", ")", ",", "src", ")", ";", "emit_move_insn", "(", "copy_rtx", "(", "fp2", ")", ",", "CONST0_RTX", "(", "SFmode", ")", ")", ";", "emit_insn", "(", "gen_slt_sf", "(", "dest", ",", "fp2", ",", "fp1", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "code", "to", "move", "general", "operand", "SRC", "into", "condition-code", "register", "DEST", ".", "SCRATCH", "is", "a", "scratch", "TFmode", "float", "register", ".", "The", "sequence", "is", ":", "FP1", "=", "SRC", "FP2", "=", "0.0f", "DEST", "=", "FP2", "<", "FP1", "where", "FP1", "and", "FP2", "are", "single-precision", "float", "registers", "taken", "from", "SCRATCH", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_emit_fcc_reload", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32517, "Length": 125} {"ground_truth": ["", "static", "void", "mips_emit_int_relational", "(", "enum", "rtx_code", "code", ",", "bool", "*", "invert_ptr", ",", "rtx", "target", ",", "rtx", "cmp0", ",", "rtx", "cmp1", ")", "{", "if", "(", "mips_relational_operand_ok_p", "(", "code", ",", "cmp1", ")", ")", "mips_emit_binary", "(", "code", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "else", "if", "(", "mips_canonicalize_comparison", "(", "&", "code", ",", "&", "cmp1", ",", "GET_MODE", "(", "target", ")", ")", ")", "mips_emit_binary", "(", "code", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "else", "{", "enum", "rtx_code", "inv_code", "=", "reverse_condition", "(", "code", ")", ";", "if", "(", "!", "mips_relational_operand_ok_p", "(", "inv_code", ",", "cmp1", ")", ")", "{", "cmp1", "=", "force_reg", "(", "GET_MODE", "(", "cmp0", ")", ",", "cmp1", ")", ";", "mips_emit_int_relational", "(", "code", ",", "invert_ptr", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "}", "else", "if", "(", "invert_ptr", "==", "0", ")", "{", "rtx", "inv_target", "=", "gen_reg_rtx", "(", "GET_MODE", "(", "target", ")", ")", ";", "mips_emit_binary", "(", "inv_code", ",", "inv_target", ",", "cmp0", ",", "cmp1", ")", ";", "mips_emit_binary", "(", "XOR", ",", "target", ",", "inv_target", ",", "const1_rtx", ")", ";", "}", "else", "{", "*", "invert_ptr", "=", "!", "*", "invert_ptr", ";", "mips_emit_binary", "(", "inv_code", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "}", "}", "}", ""], "natrual_language": ["Compare", "CMP0", "and", "CMP1", "using", "relational", "operator", "CODE", "and", "store", "the", "result", "in", "TARGET", ".", "CMP0", "and", "TARGET", "are", "register_operands", "that", "have", "the", "same", "integer", "mode", ".", "If", "INVERT_PTR", "is", "nonnull", ",", "it", "'s", "OK", "to", "set", "TARGET", "to", "the", "inverse", "of", "the", "result", "and", "flip", "*", "INVERT_PTR", "instead", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_emit_int_relational", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32518, "Length": 183} {"ground_truth": ["", "static", "void", "mips_emit_loadgp", "(", "void", ")", "{", "if", "(", "TARGET_ABICALLS", "&&", "TARGET_NEWABI", "&&", "cfun", "->", "machine", "->", "global_pointer", ">", "0", ")", "{", "rtx", "addr", ",", "offset", ",", "incoming_address", ";", "addr", "=", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ";", "offset", "=", "mips_unspec_address", "(", "addr", ",", "SYMBOL_GOTOFF_LOADGP", ")", ";", "incoming_address", "=", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "emit_insn", "(", "gen_loadgp", "(", "offset", ",", "incoming_address", ")", ")", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "emit_insn", "(", "gen_loadgp_blockage", "(", ")", ")", ";", "}", "}", ""], "natrual_language": ["If", "we", "'re", "generating", "n32", "or", "n64", "abicalls", ",", "emit", "instructions", "to", "set", "up", "the", "global", "pointer", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_emit_loadgp", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32519, "Length": 83} {"ground_truth": ["", "bool", "mips_emit_scc", "(", "enum", "rtx_code", "code", ",", "rtx", "target", ")", "{", "if", "(", "GET_MODE_CLASS", "(", "GET_MODE", "(", "cmp_operands", "[", "0", "]", ")", ")", "!=", "MODE_INT", ")", "return", "false", ";", "target", "=", "gen_lowpart", "(", "GET_MODE", "(", "cmp_operands", "[", "0", "]", ")", ",", "target", ")", ";", "if", "(", "code", "==", "EQ", "||", "code", "==", "NE", ")", "{", "rtx", "zie", "=", "mips_zero_if_equal", "(", "cmp_operands", "[", "0", "]", ",", "cmp_operands", "[", "1", "]", ")", ";", "mips_emit_binary", "(", "code", ",", "target", ",", "zie", ",", "const0_rtx", ")", ";", "}", "else", "mips_emit_int_relational", "(", "code", ",", "0", ",", "target", ",", "cmp_operands", "[", "0", "]", ",", "cmp_operands", "[", "1", "]", ")", ";", "return", "true", ";", "}", ""], "natrual_language": ["Try", "comparing", "cmp_operands", "[", "0", "]", "and", "cmp_operands", "[", "1", "]", "using", "rtl", "code", "CODE", ".", "Store", "the", "result", "in", "TARGET", "and", "return", "true", "if", "successful", ".", "On", "64-bit", "targets", ",", "TARGET", "may", "be", "wider", "than", "cmp_operands", "[", "0", "]", "."], "TS_V_token": ["mips", "0", "0", "0", "1", "0", "0", "1"], "File": "mips3", "Func": "mips_emit_scc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32520, "Length": 107} {"ground_truth": ["", "static", "void", "mips_encode_section_info", "(", "tree", "decl", ",", "rtx", "rtl", ",", "int", "first", ")", "{", "default_encode_section_info", "(", "decl", ",", "rtl", ",", "first", ")", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "==", "FUNCTION_DECL", "&&", "lookup_attribute", "(", "\"long_call\"", ",", "TYPE_ATTRIBUTES", "(", "TREE_TYPE", "(", "decl", ")", ")", ")", ")", "{", "rtx", "symbol", "=", "XEXP", "(", "rtl", ",", "0", ")", ";", "SYMBOL_REF_FLAGS", "(", "symbol", ")", "|=", "SYMBOL_FLAG_LONG_CALL", ";", "}", "}", ""], "natrual_language": ["Set", "SYMBOL_REF_FLAGS", "for", "the", "SYMBOL_REF", "inside", "RTL", ",", "which", "belongs", "to", "DECL", ".", "FIRST", "is", "true", "if", "this", "is", "the", "first", "time", "handling", "this", "decl", "."], "TS_V_token": ["mips", "\"long_call\"", "0"], "File": "mips3", "Func": "mips_encode_section_info", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32521, "Length": 65} {"ground_truth": ["", "bool", "mips_expand_block_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "length", ")", "{", "if", "(", "GET_CODE", "(", "length", ")", "==", "CONST_INT", ")", "{", "if", "(", "INTVAL", "(", "length", ")", "<=", "2", "*", "MAX_MOVE_BYTES", ")", "{", "mips_block_move_straight", "(", "dest", ",", "src", ",", "INTVAL", "(", "length", ")", ")", ";", "return", "true", ";", "}", "else", "if", "(", "optimize", ")", "{", "mips_block_move_loop", "(", "dest", ",", "src", ",", "INTVAL", "(", "length", ")", ")", ";", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Expand", "a", "movmemsi", "instruction", ",", "which", "copies", "LENGTH", "bytes", "from", "memory", "reference", "SRC", "to", "memory", "reference", "DEST", "."], "TS_V_token": ["mips", "2"], "File": "mips3", "Func": "mips_expand_block_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32522, "Length": 78} {"ground_truth": ["", "rtx", "mips_expand_builtin", "(", "tree", "exp", ",", "rtx", "target", ",", "rtx", "subtarget", "ATTRIBUTE_UNUSED", ",", "enum", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ",", "int", "ignore", "ATTRIBUTE_UNUSED", ")", "{", "enum", "insn_code", "icode", ";", "enum", "mips_builtin_type", "type", ";", "tree", "fndecl", ",", "arglist", ";", "unsigned", "int", "fcode", ";", "const", "struct", "builtin_description", "*", "bdesc", ";", "const", "struct", "bdesc_map", "*", "m", ";", "fndecl", "=", "TREE_OPERAND", "(", "TREE_OPERAND", "(", "exp", ",", "0", ")", ",", "0", ")", ";", "arglist", "=", "TREE_OPERAND", "(", "exp", ",", "1", ")", ";", "fcode", "=", "DECL_FUNCTION_CODE", "(", "fndecl", ")", ";", "bdesc", "=", "NULL", ";", "for", "(", "m", "=", "bdesc_arrays", ";", "m", "<", "&", "bdesc_arrays", "[", "ARRAY_SIZE", "(", "bdesc_arrays", ")", "]", ";", "m", "++", ")", "{", "if", "(", "fcode", "<", "m", "->", "size", ")", "{", "bdesc", "=", "m", "->", "bdesc", ";", "icode", "=", "bdesc", "[", "fcode", "]", ".", "icode", ";", "type", "=", "bdesc", "[", "fcode", "]", ".", "builtin_type", ";", "break", ";", "}", "fcode", "-=", "m", "->", "size", ";", "}", "if", "(", "bdesc", "==", "NULL", ")", "return", "0", ";", "switch", "(", "type", ")", "{", "case", "MIPS_BUILTIN_DIRECT", ":", "return", "mips_expand_builtin_direct", "(", "icode", ",", "target", ",", "arglist", ",", "true", ")", ";", "case", "MIPS_BUILTIN_DIRECT_NO_TARGET", ":", "return", "mips_expand_builtin_direct", "(", "icode", ",", "target", ",", "arglist", ",", "false", ")", ";", "case", "MIPS_BUILTIN_MOVT", ":", "case", "MIPS_BUILTIN_MOVF", ":", "return", "mips_expand_builtin_movtf", "(", "type", ",", "icode", ",", "bdesc", "[", "fcode", "]", ".", "cond", ",", "target", ",", "arglist", ")", ";", "case", "MIPS_BUILTIN_CMP_ANY", ":", "case", "MIPS_BUILTIN_CMP_ALL", ":", "case", "MIPS_BUILTIN_CMP_UPPER", ":", "case", "MIPS_BUILTIN_CMP_LOWER", ":", "case", "MIPS_BUILTIN_CMP_SINGLE", ":", "return", "mips_expand_builtin_compare", "(", "type", ",", "icode", ",", "bdesc", "[", "fcode", "]", ".", "cond", ",", "target", ",", "arglist", ")", ";", "case", "MIPS_BUILTIN_BPOSGE32", ":", "return", "mips_expand_builtin_bposge", "(", "type", ",", "target", ")", ";", "default", ":", "return", "0", ";", "}", "}", ""], "natrual_language": ["Expand", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_EXPAND_BUILTIN", "."], "TS_V_token": ["mips", "0", "0", "1", "0", "0"], "File": "mips3", "Func": "mips_expand_builtin", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32523, "Length": 271} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_bposge", "(", "enum", "mips_builtin_type", "builtin_type", ",", "rtx", "target", ")", "{", "rtx", "label1", ",", "label2", ",", "if_then_else", ";", "rtx", "cmp_result", ";", "int", "cmp_value", ";", "if", "(", "target", "==", "0", "||", "GET_MODE", "(", "target", ")", "!=", "SImode", ")", "target", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "cmp_result", "=", "gen_rtx_REG", "(", "CCDSPmode", ",", "CCDSP_PO_REGNUM", ")", ";", "if", "(", "builtin_type", "==", "MIPS_BUILTIN_BPOSGE32", ")", "cmp_value", "=", "32", ";", "else", "gcc_assert", "(", "0", ")", ";", "emit_move_insn", "(", "target", ",", "const0_rtx", ")", ";", "label1", "=", "gen_label_rtx", "(", ")", ";", "label2", "=", "gen_label_rtx", "(", ")", ";", "if_then_else", "=", "gen_rtx_IF_THEN_ELSE", "(", "VOIDmode", ",", "gen_rtx_fmt_ee", "(", "GE", ",", "CCDSPmode", ",", "cmp_result", ",", "GEN_INT", "(", "cmp_value", ")", ")", ",", "gen_rtx_LABEL_REF", "(", "VOIDmode", ",", "label1", ")", ",", "pc_rtx", ")", ";", "emit_jump_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "pc_rtx", ",", "if_then_else", ")", ")", ";", "emit_jump_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "pc_rtx", ",", "gen_rtx_LABEL_REF", "(", "VOIDmode", ",", "label2", ")", ")", ")", ";", "emit_barrier", "(", ")", ";", "emit_label", "(", "label1", ")", ";", "emit_move_insn", "(", "target", ",", "const1_rtx", ")", ";", "emit_label", "(", "label2", ")", ";", "return", "target", ";", "}", ""], "natrual_language": ["Expand", "a", "bposge", "builtin", "of", "type", "BUILTIN_TYPE", ".", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "boolean", "result", ".", "The", "sequence", "we", "want", "is", "li", "target", ",", "0", "bposge", "*", "label1", "j", "label2", "label1", ":", "li", "target", ",", "1", "label2", ":"], "TS_V_token": ["mips", "0", "32", "0"], "File": "mips3", "Func": "mips_expand_builtin_bposge", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32524, "Length": 173} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_compare", "(", "enum", "mips_builtin_type", "builtin_type", ",", "enum", "insn_code", "icode", ",", "enum", "mips_fp_condition", "cond", ",", "rtx", "target", ",", "tree", "arglist", ")", "{", "rtx", "label1", ",", "label2", ",", "if_then_else", ";", "rtx", "pat", ",", "cmp_result", ",", "ops", "[", "MAX_RECOG_OPERANDS", "]", ";", "rtx", "target_if_equal", ",", "target_if_unequal", ";", "int", "cmp_value", ",", "i", ";", "if", "(", "target", "==", "0", "||", "GET_MODE", "(", "target", ")", "!=", "SImode", ")", "target", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "cmp_result", "=", "mips_prepare_builtin_target", "(", "icode", ",", "0", ",", "0", ")", ";", "for", "(", "i", "=", "1", ";", "i", "<", "insn_data", "[", "icode", "]", ".", "n_operands", "-", "1", ";", "i", "++", ")", "ops", "[", "i", "]", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "i", ",", "&", "arglist", ")", ";", "switch", "(", "insn_data", "[", "icode", "]", ".", "n_operands", ")", "{", "case", "4", ":", "pat", "=", "GEN_FCN", "(", "icode", ")", "(", "cmp_result", ",", "ops", "[", "1", "]", ",", "ops", "[", "2", "]", ",", "GEN_INT", "(", "cond", ")", ")", ";", "break", ";", "case", "6", ":", "pat", "=", "GEN_FCN", "(", "icode", ")", "(", "cmp_result", ",", "ops", "[", "1", "]", ",", "ops", "[", "2", "]", ",", "ops", "[", "3", "]", ",", "ops", "[", "4", "]", ",", "GEN_INT", "(", "cond", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "builtin_type", "==", "MIPS_BUILTIN_CMP_ALL", ")", "{", "cmp_value", "=", "-", "1", ";", "target_if_equal", "=", "const1_rtx", ";", "target_if_unequal", "=", "const0_rtx", ";", "}", "else", "{", "cmp_value", "=", "0", ";", "target_if_equal", "=", "const0_rtx", ";", "target_if_unequal", "=", "const1_rtx", ";", "if", "(", "builtin_type", "==", "MIPS_BUILTIN_CMP_UPPER", ")", "cmp_result", "=", "simplify_gen_subreg", "(", "CCmode", ",", "cmp_result", ",", "CCV2mode", ",", "4", ")", ";", "else", "if", "(", "builtin_type", "==", "MIPS_BUILTIN_CMP_LOWER", ")", "cmp_result", "=", "simplify_gen_subreg", "(", "CCmode", ",", "cmp_result", ",", "CCV2mode", ",", "0", ")", ";", "}", "emit_move_insn", "(", "target", ",", "target_if_equal", ")", ";", "emit_insn", "(", "pat", ")", ";", "label1", "=", "gen_label_rtx", "(", ")", ";", "label2", "=", "gen_label_rtx", "(", ")", ";", "if_then_else", "=", "gen_rtx_IF_THEN_ELSE", "(", "VOIDmode", ",", "gen_rtx_fmt_ee", "(", "NE", ",", "GET_MODE", "(", "cmp_result", ")", ",", "cmp_result", ",", "GEN_INT", "(", "cmp_value", ")", ")", ",", "gen_rtx_LABEL_REF", "(", "VOIDmode", ",", "label1", ")", ",", "pc_rtx", ")", ";", "emit_jump_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "pc_rtx", ",", "if_then_else", ")", ")", ";", "emit_jump_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "pc_rtx", ",", "gen_rtx_LABEL_REF", "(", "VOIDmode", ",", "label2", ")", ")", ")", ";", "emit_barrier", "(", ")", ";", "emit_label", "(", "label1", ")", ";", "emit_move_insn", "(", "target", ",", "target_if_unequal", ")", ";", "emit_label", "(", "label2", ")", ";", "return", "target", ";", "}", ""], "natrual_language": ["Expand", "a", "comparison", "builtin", "of", "type", "BUILTIN_TYPE", ".", "ICODE", "is", "the", "code", "of", "the", "comparison", "instruction", "and", "COND", "is", "the", "condition", "it", "should", "test", ".", "ARGLIST", "is", "the", "list", "of", "function", "arguments", "and", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "boolean", "result", "."], "TS_V_token": ["mips", "0", "0", "0", "1", "1", "4", "1", "2", "6", "1", "2", "3", "4", "1", "0", "4", "0"], "File": "mips3", "Func": "mips_expand_builtin_compare", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32525, "Length": 389} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_direct", "(", "enum", "insn_code", "icode", ",", "rtx", "target", ",", "tree", "arglist", ",", "bool", "has_target", ")", "{", "rtx", "ops", "[", "MAX_RECOG_OPERANDS", "]", ";", "int", "i", "=", "0", ";", "if", "(", "has_target", ")", "{", "ops", "[", "0", "]", "=", "mips_prepare_builtin_target", "(", "icode", ",", "0", ",", "target", ")", ";", "i", "=", "1", ";", "}", "for", "(", ";", "i", "<", "insn_data", "[", "icode", "]", ".", "n_operands", "&&", "arglist", "!=", "0", ";", "i", "++", ")", "ops", "[", "i", "]", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "i", ",", "&", "arglist", ")", ";", "switch", "(", "i", ")", "{", "case", "2", ":", "emit_insn", "(", "GEN_FCN", "(", "icode", ")", "(", "ops", "[", "0", "]", ",", "ops", "[", "1", "]", ")", ")", ";", "break", ";", "case", "3", ":", "emit_insn", "(", "GEN_FCN", "(", "icode", ")", "(", "ops", "[", "0", "]", ",", "ops", "[", "1", "]", ",", "ops", "[", "2", "]", ")", ")", ";", "break", ";", "case", "4", ":", "emit_insn", "(", "GEN_FCN", "(", "icode", ")", "(", "ops", "[", "0", "]", ",", "ops", "[", "1", "]", ",", "ops", "[", "2", "]", ",", "ops", "[", "3", "]", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "target", ";", "}", ""], "natrual_language": ["Expand", "a", "MIPS_BUILTIN_DIRECT", "function", ".", "ICODE", "is", "the", "code", "of", "the", ".md", "pattern", "and", "ARGLIST", "is", "the", "list", "of", "function", "arguments", ".", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "result", ".", "HAS_TARGET", "indicates", "the", "function", "must", "return", "something", "."], "TS_V_token": ["mips", "0", "0", "0", "1", "0", "2", "0", "1", "3", "0", "1", "2", "4", "0", "1", "2", "3"], "File": "mips3", "Func": "mips_expand_builtin_direct", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32526, "Length": 190} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_movtf", "(", "enum", "mips_builtin_type", "type", ",", "enum", "insn_code", "icode", ",", "enum", "mips_fp_condition", "cond", ",", "rtx", "target", ",", "tree", "arglist", ")", "{", "rtx", "cmp_result", ",", "op0", ",", "op1", ";", "cmp_result", "=", "mips_prepare_builtin_target", "(", "icode", ",", "0", ",", "0", ")", ";", "op0", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "1", ",", "&", "arglist", ")", ";", "op1", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "2", ",", "&", "arglist", ")", ";", "emit_insn", "(", "GEN_FCN", "(", "icode", ")", "(", "cmp_result", ",", "op0", ",", "op1", ",", "GEN_INT", "(", "cond", ")", ")", ")", ";", "icode", "=", "CODE_FOR_mips_cond_move_tf_ps", ";", "target", "=", "mips_prepare_builtin_target", "(", "icode", ",", "0", ",", "target", ")", ";", "if", "(", "type", "==", "MIPS_BUILTIN_MOVT", ")", "{", "op1", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "2", ",", "&", "arglist", ")", ";", "op0", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "1", ",", "&", "arglist", ")", ";", "}", "else", "{", "op0", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "1", ",", "&", "arglist", ")", ";", "op1", "=", "mips_prepare_builtin_arg", "(", "icode", ",", "2", ",", "&", "arglist", ")", ";", "}", "emit_insn", "(", "gen_mips_cond_move_tf_ps", "(", "target", ",", "op0", ",", "op1", ",", "cmp_result", ")", ")", ";", "return", "target", ";", "}", ""], "natrual_language": ["Expand", "a", "__builtin_mips_movt_", "*", "_ps", "(", ")", "or", "__builtin_mips_movf_", "*", "_ps", "(", ")", "function", "(", "TYPE", "says", "which", ")", ".", "ARGLIST", "is", "the", "list", "of", "arguments", "to", "the", "function", ",", "ICODE", "is", "the", "instruction", "that", "should", "be", "used", "to", "compare", "the", "first", "two", "arguments", ",", "and", "COND", "is", "the", "condition", "it", "should", "test", ".", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "result", "."], "TS_V_token": ["mips", "0", "0", "1", "2", "0", "2", "1", "1", "2"], "File": "mips3", "Func": "mips_expand_builtin_movtf", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32527, "Length": 177} {"ground_truth": ["", "void", "mips_expand_call", "(", "rtx", "result", ",", "rtx", "addr", ",", "rtx", "args_size", ",", "rtx", "aux", ",", "int", "sibcall_p", ")", "{", "rtx", "orig_addr", ",", "pattern", ",", "insn", ";", "orig_addr", "=", "addr", ";", "if", "(", "!", "call_insn_operand", "(", "addr", ",", "VOIDmode", ")", ")", "{", "addr", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "mips_load_call_address", "(", "addr", ",", "orig_addr", ",", "sibcall_p", ")", ";", "}", "if", "(", "TARGET_MIPS16", "&&", "mips16_hard_float", "&&", "build_mips16_call_stub", "(", "result", ",", "addr", ",", "args_size", ",", "aux", "==", "0", "?", "0", ":", "(", "int", ")", "GET_MODE", "(", "aux", ")", ")", ")", "return", ";", "if", "(", "result", "==", "0", ")", "pattern", "=", "(", "sibcall_p", "?", "gen_sibcall_internal", "(", "addr", ",", "args_size", ")", ":", "gen_call_internal", "(", "addr", ",", "args_size", ")", ")", ";", "else", "if", "(", "GET_CODE", "(", "result", ")", "==", "PARALLEL", "&&", "XVECLEN", "(", "result", ",", "0", ")", "==", "2", ")", "{", "rtx", "reg1", ",", "reg2", ";", "reg1", "=", "XEXP", "(", "XVECEXP", "(", "result", ",", "0", ",", "0", ")", ",", "0", ")", ";", "reg2", "=", "XEXP", "(", "XVECEXP", "(", "result", ",", "0", ",", "1", ")", ",", "0", ")", ";", "pattern", "=", "(", "sibcall_p", "?", "gen_sibcall_value_multiple_internal", "(", "reg1", ",", "addr", ",", "args_size", ",", "reg2", ")", ":", "gen_call_value_multiple_internal", "(", "reg1", ",", "addr", ",", "args_size", ",", "reg2", ")", ")", ";", "}", "else", "pattern", "=", "(", "sibcall_p", "?", "gen_sibcall_value_internal", "(", "result", ",", "addr", ",", "args_size", ")", ":", "gen_call_value_internal", "(", "result", ",", "addr", ",", "args_size", ")", ")", ";", "insn", "=", "emit_call_insn", "(", "pattern", ")", ";", "if", "(", "global_got_operand", "(", "orig_addr", ",", "VOIDmode", ")", ")", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "pic_offset_table_rtx", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "call", "or", "call_value", "instruction", ".", "RESULT", "is", "where", "the", "result", "will", "go", "(", "null", "for", "calls", ")", ",", "ADDR", "is", "the", "address", "of", "the", "function", ",", "ARGS_SIZE", "is", "the", "size", "of", "the", "arguments", "and", "AUX", "is", "the", "value", "passed", "to", "us", "by", "mips_function_arg", ".", "SIBCALL_P", "is", "true", "if", "we", "are", "expanding", "a", "sibling", "call", ",", "false", "if", "we", "'re", "expanding", "a", "normal", "call", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "2", "0", "0", "0", "0", "1", "0"], "File": "mips3", "Func": "mips_expand_call", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32528, "Length": 254} {"ground_truth": ["", "void", "mips_expand_epilogue", "(", "int", "sibcall_p", ")", "{", "HOST_WIDE_INT", "step1", ",", "step2", ";", "rtx", "base", ",", "target", ";", "if", "(", "!", "sibcall_p", "&&", "mips_can_use_return_insn", "(", ")", ")", "{", "emit_jump_insn", "(", "gen_return", "(", ")", ")", ";", "return", ";", "}", "step1", "=", "cfun", "->", "machine", "->", "frame", ".", "total_size", ";", "step2", "=", "0", ";", "if", "(", "!", "frame_pointer_needed", ")", "base", "=", "stack_pointer_rtx", ";", "else", "{", "base", "=", "hard_frame_pointer_rtx", ";", "if", "(", "TARGET_MIPS16", ")", "step1", "-=", "cfun", "->", "machine", "->", "frame", ".", "args_size", ";", "}", "if", "(", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", "|", "cfun", "->", "machine", "->", "frame", ".", "fmask", ")", "!=", "0", ")", "{", "step2", "=", "MIN", "(", "step1", ",", "MIPS_MAX_FIRST_STACK_STEP", ")", ";", "step1", "-=", "step2", ";", "}", "target", "=", "base", ";", "if", "(", "step1", ">", "0", ")", "{", "rtx", "adjust", ";", "adjust", "=", "GEN_INT", "(", "step1", ")", ";", "if", "(", "!", "SMALL_OPERAND", "(", "step1", ")", ")", "{", "emit_move_insn", "(", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ",", "adjust", ")", ";", "adjust", "=", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ";", "}", "if", "(", "!", "TARGET_MIPS16", ")", "target", "=", "stack_pointer_rtx", ";", "emit_insn", "(", "gen_add3_insn", "(", "target", ",", "base", ",", "adjust", ")", ")", ";", "}", "if", "(", "target", "!=", "stack_pointer_rtx", ")", "emit_move_insn", "(", "stack_pointer_rtx", ",", "target", ")", ";", "if", "(", "TARGET_ABICALLS", "&&", "TARGET_NEWABI", "&&", "!", "TARGET_EXPLICIT_RELOCS", ")", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "mips_for_each_saved_reg", "(", "cfun", "->", "machine", "->", "frame", ".", "total_size", "-", "step2", ",", "mips_restore_reg", ")", ";", "if", "(", "step2", ">", "0", ")", "emit_insn", "(", "gen_add3_insn", "(", "stack_pointer_rtx", ",", "stack_pointer_rtx", ",", "GEN_INT", "(", "step2", ")", ")", ")", ";", "if", "(", "current_function_calls_eh_return", ")", "{", "if", "(", "TARGET_MIPS16", ")", "{", "emit_move_insn", "(", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ",", "stack_pointer_rtx", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ",", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ",", "EH_RETURN_STACKADJ_RTX", ")", ")", ";", "emit_move_insn", "(", "stack_pointer_rtx", ",", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ")", ";", "}", "else", "emit_insn", "(", "gen_add3_insn", "(", "stack_pointer_rtx", ",", "stack_pointer_rtx", ",", "EH_RETURN_STACKADJ_RTX", ")", ")", ";", "}", "if", "(", "!", "sibcall_p", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", "&", "RA_MASK", ")", "!=", "0", ")", "emit_jump_insn", "(", "gen_return_internal", "(", "gen_rtx_REG", "(", "Pmode", ",", "GP_REG_FIRST", "+", "7", ")", ")", ")", ";", "else", "emit_jump_insn", "(", "gen_return_internal", "(", "gen_rtx_REG", "(", "Pmode", ",", "GP_REG_FIRST", "+", "31", ")", ")", ")", ";", "}", "}", ""], "natrual_language": ["Expand", "the", "epilogue", "into", "a", "bunch", "of", "separate", "insns", ".", "SIBCALL_P", "is", "true", "if", "this", "epilogue", "precedes", "a", "sibling", "call", ",", "false", "if", "it", "is", "for", "a", "normal", "``", "epilogue", "''", "pattern", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "7", "31"], "File": "mips3", "Func": "mips_expand_epilogue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32529, "Length": 373} {"ground_truth": ["", "void", "mips_expand_prologue", "(", "void", ")", "{", "HOST_WIDE_INT", "size", ";", "if", "(", "cfun", "->", "machine", "->", "global_pointer", ">", "0", ")", "REGNO", "(", "pic_offset_table_rtx", ")", "=", "cfun", "->", "machine", "->", "global_pointer", ";", "size", "=", "compute_frame_size", "(", "get_frame_size", "(", ")", ")", ";", "if", "(", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", "|", "cfun", "->", "machine", "->", "frame", ".", "fmask", ")", "!=", "0", ")", "{", "HOST_WIDE_INT", "step1", ";", "step1", "=", "MIN", "(", "size", ",", "MIPS_MAX_FIRST_STACK_STEP", ")", ";", "RTX_FRAME_RELATED_P", "(", "emit_insn", "(", "gen_add3_insn", "(", "stack_pointer_rtx", ",", "stack_pointer_rtx", ",", "GEN_INT", "(", "-", "step1", ")", ")", ")", ")", "=", "1", ";", "size", "-=", "step1", ";", "mips_for_each_saved_reg", "(", "size", ",", "mips_save_reg", ")", ";", "}", "if", "(", "size", ">", "0", ")", "{", "if", "(", "SMALL_OPERAND", "(", "-", "size", ")", ")", "RTX_FRAME_RELATED_P", "(", "emit_insn", "(", "gen_add3_insn", "(", "stack_pointer_rtx", ",", "stack_pointer_rtx", ",", "GEN_INT", "(", "-", "size", ")", ")", ")", ")", "=", "1", ";", "else", "{", "emit_move_insn", "(", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ",", "GEN_INT", "(", "size", ")", ")", ";", "if", "(", "TARGET_MIPS16", ")", "{", "gcc_assert", "(", "frame_pointer_needed", ")", ";", "emit_move_insn", "(", "hard_frame_pointer_rtx", ",", "stack_pointer_rtx", ")", ";", "emit_insn", "(", "gen_sub3_insn", "(", "hard_frame_pointer_rtx", ",", "hard_frame_pointer_rtx", ",", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ")", ")", ";", "emit_move_insn", "(", "stack_pointer_rtx", ",", "hard_frame_pointer_rtx", ")", ";", "}", "else", "emit_insn", "(", "gen_sub3_insn", "(", "stack_pointer_rtx", ",", "stack_pointer_rtx", ",", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ")", ")", ";", "mips_set_frame_expr", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "stack_pointer_rtx", ",", "plus_constant", "(", "stack_pointer_rtx", ",", "-", "size", ")", ")", ")", ";", "}", "}", "if", "(", "frame_pointer_needed", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "cfun", "->", "machine", "->", "frame", ".", "args_size", "!=", "0", ")", "{", "rtx", "offset", "=", "GEN_INT", "(", "cfun", "->", "machine", "->", "frame", ".", "args_size", ")", ";", "if", "(", "SMALL_OPERAND", "(", "cfun", "->", "machine", "->", "frame", ".", "args_size", ")", ")", "RTX_FRAME_RELATED_P", "(", "emit_insn", "(", "gen_add3_insn", "(", "hard_frame_pointer_rtx", ",", "stack_pointer_rtx", ",", "offset", ")", ")", ")", "=", "1", ";", "else", "{", "emit_move_insn", "(", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ",", "offset", ")", ";", "emit_move_insn", "(", "hard_frame_pointer_rtx", ",", "stack_pointer_rtx", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "hard_frame_pointer_rtx", ",", "hard_frame_pointer_rtx", ",", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ")", ")", ";", "mips_set_frame_expr", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "hard_frame_pointer_rtx", ",", "plus_constant", "(", "stack_pointer_rtx", ",", "cfun", "->", "machine", "->", "frame", ".", "args_size", ")", ")", ")", ";", "}", "}", "else", "RTX_FRAME_RELATED_P", "(", "emit_move_insn", "(", "hard_frame_pointer_rtx", ",", "stack_pointer_rtx", ")", ")", "=", "1", ";", "}", "if", "(", "TARGET_ABICALLS", "&&", "!", "TARGET_NEWABI", "&&", "!", "current_function_is_leaf", ")", "emit_insn", "(", "gen_cprestore", "(", "GEN_INT", "(", "current_function_outgoing_args_size", ")", ")", ")", ";", "mips_emit_loadgp", "(", ")", ";", "if", "(", "current_function_profile", ")", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "the", "prologue", "into", "a", "bunch", "of", "separate", "insns", "."], "TS_V_token": ["mips", "0", "0", "1", "0", "1", "0", "1", "1"], "File": "mips3", "Func": "mips_expand_prologue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32530, "Length": 408} {"ground_truth": ["", "bool", "mips_expand_unaligned_load", "(", "rtx", "dest", ",", "rtx", "src", ",", "unsigned", "int", "width", ",", "int", "bitpos", ")", "{", "rtx", "left", ",", "right", ",", "temp", ";", "if", "(", "GET_CODE", "(", "dest", ")", "==", "SUBREG", "&&", "GET_MODE", "(", "dest", ")", "==", "DImode", "&&", "SUBREG_BYTE", "(", "dest", ")", "==", "0", "&&", "GET_MODE", "(", "SUBREG_REG", "(", "dest", ")", ")", "==", "SImode", ")", "dest", "=", "SUBREG_REG", "(", "dest", ")", ";", "if", "(", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "dest", ")", ")", "!=", "width", ")", "return", "false", ";", "if", "(", "!", "mips_get_unaligned_mem", "(", "&", "src", ",", "width", ",", "bitpos", ",", "&", "left", ",", "&", "right", ")", ")", "return", "false", ";", "temp", "=", "gen_reg_rtx", "(", "GET_MODE", "(", "dest", ")", ")", ";", "if", "(", "GET_MODE", "(", "dest", ")", "==", "DImode", ")", "{", "emit_insn", "(", "gen_mov_ldl", "(", "temp", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_ldr", "(", "dest", ",", "copy_rtx", "(", "src", ")", ",", "right", ",", "temp", ")", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_mov_lwl", "(", "temp", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_lwr", "(", "dest", ",", "copy_rtx", "(", "src", ")", ",", "right", ",", "temp", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "emit", "the", "equivalent", "of", "(", "set", "DEST", "(", "zero_extract", "SRC", "WIDTH", "BITPOS", ")", ")", ".", "Return", "true", "on", "success", ".", "We", "only", "handle", "cases", "where", "zero_extract", "is", "equivalent", "to", "sign_extract", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_expand_unaligned_load", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32531, "Length": 187} {"ground_truth": ["", "bool", "mips_expand_unaligned_store", "(", "rtx", "dest", ",", "rtx", "src", ",", "unsigned", "int", "width", ",", "int", "bitpos", ")", "{", "rtx", "left", ",", "right", ";", "if", "(", "!", "mips_get_unaligned_mem", "(", "&", "dest", ",", "width", ",", "bitpos", ",", "&", "left", ",", "&", "right", ")", ")", "return", "false", ";", "src", "=", "gen_lowpart", "(", "mode_for_size", "(", "width", ",", "MODE_INT", ",", "0", ")", ",", "src", ")", ";", "if", "(", "GET_MODE", "(", "src", ")", "==", "DImode", ")", "{", "emit_insn", "(", "gen_mov_sdl", "(", "dest", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_sdr", "(", "copy_rtx", "(", "dest", ")", ",", "copy_rtx", "(", "src", ")", ",", "right", ")", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_mov_swl", "(", "dest", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_swr", "(", "copy_rtx", "(", "dest", ")", ",", "copy_rtx", "(", "src", ")", ",", "right", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "expand", "(", "set", "(", "zero_extract", "DEST", "WIDTH", "BITPOS", ")", "SRC", ")", ".", "Return", "true", "on", "success", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_expand_unaligned_store", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32532, "Length": 138} {"ground_truth": ["", "static", "void", "mips_file_end", "(", "void", ")", "{", "tree", "name_tree", ";", "struct", "extern_list", "*", "p", ";", "if", "(", "extern_head", ")", "{", "fputs", "(", "\"\\n\"", ",", "asm_out_file", ")", ";", "for", "(", "p", "=", "extern_head", ";", "p", "!=", "0", ";", "p", "=", "p", "->", "next", ")", "{", "name_tree", "=", "get_identifier", "(", "p", "->", "name", ")", ";", "if", "(", "!", "TREE_ASM_WRITTEN", "(", "name_tree", ")", "&&", "TREE_SYMBOL_REFERENCED", "(", "name_tree", ")", ")", "{", "TREE_ASM_WRITTEN", "(", "name_tree", ")", "=", "1", ";", "if", "(", "TARGET_IRIX", "&&", "mips_abi", "==", "ABI_32", "&&", "p", "->", "size", "==", "-", "1", ")", "{", "fputs", "(", "\"\\t.globl \"", ",", "asm_out_file", ")", ";", "assemble_name", "(", "asm_out_file", ",", "p", "->", "name", ")", ";", "fputs", "(", "\" .text\\n\"", ",", "asm_out_file", ")", ";", "}", "else", "{", "fputs", "(", "\"\\t.extern\\t\"", ",", "asm_out_file", ")", ";", "assemble_name", "(", "asm_out_file", ",", "p", "->", "name", ")", ";", "fprintf", "(", "asm_out_file", ",", "\", %d\\n\"", ",", "p", "->", "size", ")", ";", "}", "}", "}", "}", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FILE_END", ".", "When", "using", "assembler", "macros", ",", "emit", ".externs", "for", "any", "small-data", "variables", "that", "turned", "out", "to", "be", "external", "."], "TS_V_token": ["mips", "\"\\n\"", "0", "1", "1", "\"\\t.globl \"", "\" .text\\n\"", "\"\\t.extern\\t\"", "\", %d\\n\""], "File": "mips3", "Func": "mips_file_end", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32533, "Length": 148} {"ground_truth": ["", "static", "void", "mips_file_start", "(", "void", ")", "{", "default_file_start", "(", ")", ";", "if", "(", "!", "TARGET_IRIX", ")", "{", "const", "char", "*", "abi_string", "=", "NULL", ";", "switch", "(", "mips_abi", ")", "{", "case", "ABI_32", ":", "abi_string", "=", "\"abi32\"", ";", "break", ";", "case", "ABI_N32", ":", "abi_string", "=", "\"abiN32\"", ";", "break", ";", "case", "ABI_64", ":", "abi_string", "=", "\"abi64\"", ";", "break", ";", "case", "ABI_O64", ":", "abi_string", "=", "\"abiO64\"", ";", "break", ";", "case", "ABI_EABI", ":", "abi_string", "=", "TARGET_64BIT", "?", "\"eabi64\"", ":", "\"eabi32\"", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "fprintf", "(", "asm_out_file", ",", "\"\\t.section .mdebug.%s\\n\"", ",", "abi_string", ")", ";", "if", "(", "mips_abi", "==", "ABI_EABI", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.section .gcc_compiled_long%d\\n\"", ",", "TARGET_LONG64", "?", "64", ":", "32", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.previous\\n\"", ")", ";", "}", "if", "(", "TARGET_ABICALLS", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.abicalls\\n\"", ")", ";", "if", "(", "TARGET_MIPS16", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tmips16\\n\"", ")", ";", "if", "(", "flag_verbose_asm", ")", "fprintf", "(", "asm_out_file", ",", "\"\\n%s -G value = %d, Arch = %s, ISA = %d\\n\"", ",", "ASM_COMMENT_START", ",", "mips_section_threshold", ",", "mips_arch_info", "->", "name", ",", "mips_isa", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FILE_START", "."], "TS_V_token": ["mips", "\"abi32\"", "\"abiN32\"", "\"abi64\"", "\"abiO64\"", "\"eabi64\"", "\"eabi32\"", "\"\\t.section .mdebug.%s\\n\"", "\"\\t.section .gcc_compiled_long%d\\n\"", "64", "32", "\"\\t.previous\\n\"", "\"\\t.abicalls\\n\"", "\"\\t.set\\tmips16\\n\"", "\"\\n%s -G value = %d, Arch = %s, ISA = %d\\n\""], "File": "mips3", "Func": "mips_file_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32534, "Length": 165} {"ground_truth": ["", "static", "void", "mips_for_each_saved_reg", "(", "HOST_WIDE_INT", "sp_offset", ",", "mips_save_restore_fn", "fn", ")", "{", "enum", "machine_mode", "fpr_mode", ";", "HOST_WIDE_INT", "offset", ";", "int", "regno", ";", "offset", "=", "cfun", "->", "machine", "->", "frame", ".", "gp_sp_offset", "-", "sp_offset", ";", "for", "(", "regno", "=", "GP_REG_LAST", ";", "regno", ">=", "GP_REG_FIRST", ";", "regno", "--", ")", "if", "(", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", ",", "regno", "-", "GP_REG_FIRST", ")", ")", "{", "mips_save_restore_reg", "(", "gpr_mode", ",", "regno", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "GET_MODE_SIZE", "(", "gpr_mode", ")", ";", "}", "offset", "=", "cfun", "->", "machine", "->", "frame", ".", "fp_sp_offset", "-", "sp_offset", ";", "fpr_mode", "=", "(", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ")", ";", "for", "(", "regno", "=", "(", "FP_REG_LAST", "-", "FP_INC", "+", "1", ")", ";", "regno", ">=", "FP_REG_FIRST", ";", "regno", "-=", "FP_INC", ")", "if", "(", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "fmask", ",", "regno", "-", "FP_REG_FIRST", ")", ")", "{", "mips_save_restore_reg", "(", "fpr_mode", ",", "regno", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "GET_MODE_SIZE", "(", "fpr_mode", ")", ";", "}", "}", ""], "natrual_language": ["Call", "FN", "for", "each", "register", "that", "is", "saved", "by", "the", "current", "function", ".", "SP_OFFSET", "is", "the", "offset", "of", "the", "current", "stack", "pointer", "from", "the", "start", "of", "the", "frame", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips_for_each_saved_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32535, "Length": 163} {"ground_truth": ["", "static", "int", "mips_fpr_return_fields", "(", "tree", "valtype", ",", "tree", "*", "fields", ")", "{", "tree", "field", ";", "int", "i", ";", "if", "(", "!", "TARGET_NEWABI", ")", "return", "0", ";", "if", "(", "TREE_CODE", "(", "valtype", ")", "!=", "RECORD_TYPE", ")", "return", "0", ";", "i", "=", "0", ";", "for", "(", "field", "=", "TYPE_FIELDS", "(", "valtype", ")", ";", "field", "!=", "0", ";", "field", "=", "TREE_CHAIN", "(", "field", ")", ")", "{", "if", "(", "TREE_CODE", "(", "field", ")", "!=", "FIELD_DECL", ")", "continue", ";", "if", "(", "TREE_CODE", "(", "TREE_TYPE", "(", "field", ")", ")", "!=", "REAL_TYPE", ")", "return", "0", ";", "if", "(", "i", "==", "2", ")", "return", "0", ";", "fields", "[", "i", "++", "]", "=", "field", ";", "}", "return", "i", ";", "}", ""], "natrual_language": ["See", "whether", "VALTYPE", "is", "a", "record", "whose", "fields", "should", "be", "returned", "in", "floating-point", "registers", ".", "If", "so", ",", "return", "the", "number", "of", "fields", "and", "list", "them", "in", "FIELDS", "(", "which", "should", "have", "two", "elements", ")", ".", "Return", "0", "otherwise", ".", "For", "n32", "&", "n64", ",", "a", "structure", "with", "one", "or", "two", "fields", "is", "returned", "in", "floating-point", "registers", "as", "long", "as", "every", "field", "has", "a", "floating-point", "type", ".", "The", "C++", "FE", "used", "to", "remove", "zero-width", "bit-fields", "in", "GCC", "11", "and", "earlier", ".", "To", "make", "a", "proper", "diagnostic", ",", "this", "function", "will", "set", "HAS_CXX_ZERO_WIDTH_BF", "to", "true", "once", "a", "C++", "zero-width", "bit-field", "shows", "up", ",", "and", "then", "ignore", "it", ".", "We", "had", "failed", "to", "ignore", "C++17", "empty", "bases", "in", "GCC", "7", ",", "8", ",", "9", ",", "10", ",", "and", "11", ".", "This", "caused", "an", "ABI", "incompatibility", "between", "C++14", "and", "C++17", ".", "This", "is", "fixed", "now", "and", "to", "make", "a", "proper", "diagnostic", ",", "this", "function", "will", "set", "HAS_CXX17_EMPTY_BASE", "to", "true", "once", "a", "C++17", "empty", "base", "shows", "up", ",", "and", "then", "ignore", "it", ".", "The", "caller", "should", "use", "the", "value", "of", "HAS_CXX17_EMPTY_BASE", "and/or", "HAS_CXX_ZERO_WIDTH_BF", "to", "emit", "a", "proper", "-Wpsabi", "inform", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "2", "0"], "File": "mips3", "Func": "mips_fpr_return_fields", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32536, "Length": 111} {"ground_truth": ["", "static", "rtx", "mips_frame_set", "(", "rtx", "mem", ",", "rtx", "reg", ")", "{", "rtx", "set", ";", "if", "(", "REGNO", "(", "reg", ")", "==", "GP_REG_FIRST", "+", "31", "&&", "DWARF_FRAME_RETURN_COLUMN", "!=", "GP_REG_FIRST", "+", "31", ")", "reg", "=", "gen_rtx_REG", "(", "GET_MODE", "(", "reg", ")", ",", "DWARF_FRAME_RETURN_COLUMN", ")", ";", "set", "=", "gen_rtx_SET", "(", "VOIDmode", ",", "mem", ",", "reg", ")", ";", "RTX_FRAME_RELATED_P", "(", "set", ")", "=", "1", ";", "return", "set", ";", "}", ""], "natrual_language": ["Return", "a", "frame-related", "rtx", "that", "stores", "register", "REGNO", "at", "(", "SP", "+", "OFFSET", ")", ".", "The", "expression", "should", "only", "be", "used", "to", "store", "single", "registers", "."], "TS_V_token": ["mips", "31", "31", "1"], "File": "mips3", "Func": "mips_frame_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32537, "Length": 65} {"ground_truth": ["", "static", "bool", "mips_function_has_gp_insn", "(", "void", ")", "{", "if", "(", "!", "cfun", "->", "machine", "->", "has_gp_insn_p", ")", "{", "rtx", "insn", ";", "push_topmost_sequence", "(", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "if", "(", "INSN_P", "(", "insn", ")", "&&", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "!=", "USE", "&&", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "!=", "CLOBBER", "&&", "(", "get_attr_got", "(", "insn", ")", "!=", "GOT_UNSET", "||", "small_data_pattern", "(", "PATTERN", "(", "insn", ")", ",", "VOIDmode", ")", ")", ")", "break", ";", "pop_topmost_sequence", "(", ")", ";", "cfun", "->", "machine", "->", "has_gp_insn_p", "=", "(", "insn", "!=", "0", ")", ";", "}", "return", "cfun", "->", "machine", "->", "has_gp_insn_p", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "has", "an", "insn", "that", "implicitly", "refers", "to", "$", "gp", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_function_has_gp_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32538, "Length": 114} {"ground_truth": ["", "static", "bool", "mips_function_ok_for_sibcall", "(", "tree", "decl", "ATTRIBUTE_UNUSED", ",", "tree", "exp", "ATTRIBUTE_UNUSED", ")", "{", "return", "TARGET_SIBCALLS", ";", "}", ""], "natrual_language": ["We", "can", "handle", "any", "sibcall", "when", "TARGET_SIBCALLS", "is", "true", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_function_ok_for_sibcall", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32539, "Length": 17} {"ground_truth": ["", "static", "void", "mips_function_rodata_section", "(", "tree", "decl", ")", "{", "if", "(", "!", "TARGET_ABICALLS", "||", "TARGET_GPWORD", ")", "default_function_rodata_section", "(", "decl", ")", ";", "else", "if", "(", "decl", "&&", "DECL_SECTION_NAME", "(", "decl", ")", ")", "{", "const", "char", "*", "name", "=", "TREE_STRING_POINTER", "(", "DECL_SECTION_NAME", "(", "decl", ")", ")", ";", "if", "(", "DECL_ONE_ONLY", "(", "decl", ")", "&&", "strncmp", "(", "name", ",", "\".gnu.linkonce.t.\"", ",", "16", ")", "==", "0", ")", "{", "char", "*", "rname", "=", "ASTRDUP", "(", "name", ")", ";", "rname", "[", "14", "]", "=", "'d'", ";", "named_section_real", "(", "rname", ",", "SECTION_LINKONCE", "|", "SECTION_WRITE", ",", "decl", ")", ";", "}", "else", "if", "(", "flag_function_sections", "&&", "flag_data_sections", "&&", "strncmp", "(", "name", ",", "\".text.\"", ",", "6", ")", "==", "0", ")", "{", "char", "*", "rname", "=", "ASTRDUP", "(", "name", ")", ";", "memcpy", "(", "rname", "+", "1", ",", "\"data\"", ",", "4", ")", ";", "named_section_flags", "(", "rname", ",", "SECTION_WRITE", ")", ";", "}", "else", "data_section", "(", ")", ";", "}", "else", "data_section", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FUNCTION_RODATA_SECTION", ".", "The", "complication", "here", "is", "that", ",", "with", "the", "combination", "TARGET_ABICALLS", "&", "&", "!", "TARGET_GPWORD", ",", "jump", "tables", "will", "use", "absolute", "addresses", ",", "and", "should", "therefore", "not", "be", "included", "in", "the", "read-only", "part", "of", "a", "DSO", ".", "Handle", "such", "cases", "by", "selecting", "a", "normal", "data", "section", "instead", "of", "a", "read-only", "one", ".", "The", "logic", "apes", "that", "in", "default_function_rodata_section", "."], "TS_V_token": ["mips", "\".gnu.linkonce.t.\"", "16", "0", "14", "\".text.\"", "6", "0", "1", "\"data\"", "4"], "File": "mips3", "Func": "mips_function_rodata_section", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32540, "Length": 150} {"ground_truth": ["", "rtx", "mips_function_value", "(", "tree", "valtype", ",", "tree", "func", "ATTRIBUTE_UNUSED", ",", "enum", "machine_mode", "mode", ")", "{", "if", "(", "valtype", ")", "{", "tree", "fields", "[", "2", "]", ";", "int", "unsignedp", ";", "mode", "=", "TYPE_MODE", "(", "valtype", ")", ";", "unsignedp", "=", "TYPE_UNSIGNED", "(", "valtype", ")", ";", "mode", "=", "promote_mode", "(", "valtype", ",", "mode", ",", "&", "unsignedp", ",", "1", ")", ";", "switch", "(", "mips_fpr_return_fields", "(", "valtype", ",", "fields", ")", ")", "{", "case", "1", ":", "return", "gen_rtx_REG", "(", "mode", ",", "FP_RETURN", ")", ";", "case", "2", ":", "return", "mips_return_fpr_pair", "(", "mode", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "0", "]", ")", ")", ",", "int_byte_position", "(", "fields", "[", "0", "]", ")", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "1", "]", ")", ")", ",", "int_byte_position", "(", "fields", "[", "1", "]", ")", ")", ";", "}", "if", "(", "mips_return_in_msb", "(", "valtype", ")", ")", "{", "HOST_WIDE_INT", "size", "=", "int_size_in_bytes", "(", "valtype", ")", ";", "if", "(", "size", "%", "UNITS_PER_WORD", "!=", "0", ")", "{", "size", "+=", "UNITS_PER_WORD", "-", "size", "%", "UNITS_PER_WORD", ";", "mode", "=", "mode_for_size", "(", "size", "*", "BITS_PER_UNIT", ",", "MODE_INT", ",", "0", ")", ";", "}", "}", "if", "(", "mips_abi", "!=", "ABI_EABI", "&&", "!", "FLOAT_TYPE_P", "(", "valtype", ")", ")", "return", "gen_rtx_REG", "(", "mode", ",", "GP_RETURN", ")", ";", "}", "if", "(", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_VECTOR_FLOAT", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_HWFPVALUE", ")", "return", "gen_rtx_REG", "(", "mode", ",", "FP_RETURN", ")", ";", "if", "(", "mode", "==", "TFmode", ")", "return", "mips_return_fpr_pair", "(", "mode", ",", "DImode", ",", "0", ",", "DImode", ",", "GET_MODE_SIZE", "(", "mode", ")", "/", "2", ")", ";", "if", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_HWFPVALUE", "*", "2", ")", "return", "mips_return_fpr_pair", "(", "mode", ",", "GET_MODE_INNER", "(", "mode", ")", ",", "0", ",", "GET_MODE_INNER", "(", "mode", ")", ",", "GET_MODE_SIZE", "(", "mode", ")", "/", "2", ")", ";", "return", "gen_rtx_REG", "(", "mode", ",", "GP_RETURN", ")", ";", "}", ""], "natrual_language": ["Implement", "FUNCTION_VALUE", "and", "LIBCALL_VALUE", ".", "For", "normal", "calls", ",", "VALTYPE", "is", "the", "return", "type", "and", "MODE", "is", "VOIDmode", ".", "For", "libcalls", ",", "VALTYPE", "is", "null", "and", "MODE", "is", "the", "mode", "of", "the", "return", "value", "."], "TS_V_token": ["mips", "2", "1", "1", "2", "0", "0", "1", "1", "0", "0", "0", "2", "2", "0", "2"], "File": "mips3", "Func": "mips_function_value", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32541, "Length": 305} {"ground_truth": ["", "void", "mips_gen_conditional_trap", "(", "rtx", "*", "operands", ")", "{", "rtx", "op0", ",", "op1", ";", "enum", "rtx_code", "cmp_code", "=", "GET_CODE", "(", "operands", "[", "0", "]", ")", ";", "enum", "machine_mode", "mode", "=", "GET_MODE", "(", "cmp_operands", "[", "0", "]", ")", ";", "switch", "(", "cmp_code", ")", "{", "case", "GT", ":", "cmp_code", "=", "LT", ";", "break", ";", "case", "LE", ":", "cmp_code", "=", "GE", ";", "break", ";", "case", "GTU", ":", "cmp_code", "=", "LTU", ";", "break", ";", "case", "LEU", ":", "cmp_code", "=", "GEU", ";", "break", ";", "default", ":", "break", ";", "}", "if", "(", "cmp_code", "==", "GET_CODE", "(", "operands", "[", "0", "]", ")", ")", "{", "op0", "=", "cmp_operands", "[", "0", "]", ";", "op1", "=", "cmp_operands", "[", "1", "]", ";", "}", "else", "{", "op0", "=", "cmp_operands", "[", "1", "]", ";", "op1", "=", "cmp_operands", "[", "0", "]", ";", "}", "op0", "=", "force_reg", "(", "mode", ",", "op0", ")", ";", "if", "(", "!", "arith_operand", "(", "op1", ",", "mode", ")", ")", "op1", "=", "force_reg", "(", "mode", ",", "op1", ")", ";", "emit_insn", "(", "gen_rtx_TRAP_IF", "(", "VOIDmode", ",", "gen_rtx_fmt_ee", "(", "cmp_code", ",", "mode", ",", "op0", ",", "op1", ")", ",", "operands", "[", "1", "]", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "a", "conditional", "trap", ".", "OPERANDS", "is", "the", "array", "of", "operands", "passed", "to", "the", "conditional_trap", "expander", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "1", "1", "0", "1"], "File": "mips3", "Func": "mips_gen_conditional_trap", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32542, "Length": 181} {"ground_truth": ["", "static", "bool", "mips_get_unaligned_mem", "(", "rtx", "*", "op", ",", "unsigned", "int", "width", ",", "int", "bitpos", ",", "rtx", "*", "left", ",", "rtx", "*", "right", ")", "{", "rtx", "first", ",", "last", ";", "if", "(", "!", "MEM_P", "(", "*", "op", ")", ")", "return", "false", ";", "if", "(", "width", "!=", "32", "&&", "(", "!", "TARGET_64BIT", "||", "width", "!=", "64", ")", ")", "return", "false", ";", "if", "(", "bitpos", "%", "BITS_PER_UNIT", "!=", "0", ")", "return", "false", ";", "if", "(", "MEM_ALIGN", "(", "*", "op", ")", ">=", "width", ")", "return", "false", ";", "*", "op", "=", "adjust_address", "(", "*", "op", ",", "BLKmode", ",", "0", ")", ";", "set_mem_size", "(", "*", "op", ",", "GEN_INT", "(", "width", "/", "BITS_PER_UNIT", ")", ")", ";", "first", "=", "adjust_address", "(", "*", "op", ",", "QImode", ",", "0", ")", ";", "last", "=", "adjust_address", "(", "*", "op", ",", "QImode", ",", "width", "/", "BITS_PER_UNIT", "-", "1", ")", ";", "if", "(", "TARGET_BIG_ENDIAN", ")", "*", "left", "=", "first", ",", "*", "right", "=", "last", ";", "else", "*", "left", "=", "last", ",", "*", "right", "=", "first", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "it", "is", "possible", "to", "use", "left/right", "accesses", "for", "a", "bitfield", "of", "WIDTH", "bits", "starting", "BITPOS", "bits", "into", "*", "OP", ".", "When", "returning", "true", ",", "update", "*", "OP", ",", "*", "LEFT", "and", "*", "RIGHT", "as", "follows", ":", "*", "OP", "is", "a", "BLKmode", "reference", "to", "the", "whole", "field", ".", "*", "LEFT", "is", "a", "QImode", "reference", "to", "the", "first", "byte", "if", "big", "endian", "or", "the", "last", "byte", "if", "little", "endian", ".", "This", "address", "can", "be", "used", "in", "the", "left-side", "instructions", "(", "lwl", ",", "swl", ",", "ldl", ",", "sdl", ")", ".", "*", "RIGHT", "is", "a", "QImode", "reference", "to", "the", "opposite", "end", "of", "the", "field", "and", "can", "be", "used", "in", "the", "patterning", "right-side", "instruction", "."], "TS_V_token": ["mips", "32", "64", "0", "0", "0", "1"], "File": "mips3", "Func": "mips_get_unaligned_mem", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32543, "Length": 166} {"ground_truth": ["", "static", "unsigned", "int", "mips_global_pointer", "(", "void", ")", "{", "unsigned", "int", "regno", ";", "if", "(", "!", "TARGET_ABICALLS", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "current_function_profile", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "current_function_has_nonlocal_goto", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "!", "regs_ever_live", "[", "GLOBAL_POINTER_REGNUM", "]", "&&", "!", "current_function_uses_const_pool", "&&", "!", "mips_function_has_gp_insn", "(", ")", ")", "return", "0", ";", "if", "(", "TARGET_NEWABI", "&&", "current_function_is_leaf", ")", "for", "(", "regno", "=", "GP_REG_FIRST", ";", "regno", "<=", "GP_REG_LAST", ";", "regno", "++", ")", "if", "(", "!", "regs_ever_live", "[", "regno", "]", "&&", "call_used_regs", "[", "regno", "]", "&&", "!", "fixed_regs", "[", "regno", "]", "&&", "regno", "!=", "PIC_FUNCTION_ADDR_REGNUM", ")", "return", "regno", ";", "return", "GLOBAL_POINTER_REGNUM", ";", "}", ""], "natrual_language": ["Return", "the", "register", "that", "should", "be", "used", "as", "the", "global", "pointer", "within", "this", "function", ".", "Return", "0", "if", "the", "function", "does", "n't", "need", "a", "global", "pointer", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_global_pointer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32544, "Length": 110} {"ground_truth": ["", "static", "bool", "mips_handle_option", "(", "size_t", "code", ",", "const", "char", "*", "arg", ",", "int", "value", "ATTRIBUTE_UNUSED", ")", "{", "switch", "(", "code", ")", "{", "case", "OPT_mabi_", ":", "if", "(", "strcmp", "(", "arg", ",", "\"32\"", ")", "==", "0", ")", "mips_abi", "=", "ABI_32", ";", "else", "if", "(", "strcmp", "(", "arg", ",", "\"o64\"", ")", "==", "0", ")", "mips_abi", "=", "ABI_O64", ";", "else", "if", "(", "strcmp", "(", "arg", ",", "\"n32\"", ")", "==", "0", ")", "mips_abi", "=", "ABI_N32", ";", "else", "if", "(", "strcmp", "(", "arg", ",", "\"64\"", ")", "==", "0", ")", "mips_abi", "=", "ABI_64", ";", "else", "if", "(", "strcmp", "(", "arg", ",", "\"eabi\"", ")", "==", "0", ")", "mips_abi", "=", "ABI_EABI", ";", "else", "return", "false", ";", "return", "true", ";", "case", "OPT_march_", ":", "case", "OPT_mtune_", ":", "return", "mips_parse_cpu", "(", "arg", ")", "!=", "0", ";", "case", "OPT_mips", ":", "mips_isa_info", "=", "mips_parse_cpu", "(", "ACONCAT", "(", "(", "\"mips\"", ",", "arg", ",", "NULL", ")", ")", ")", ";", "return", "mips_isa_info", "!=", "0", ";", "case", "OPT_mno_flush_func", ":", "mips_cache_flush_func", "=", "NULL", ";", "return", "true", ";", "default", ":", "return", "true", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_HANDLE_OPTION", "."], "TS_V_token": ["mips", "\"32\"", "0", "\"o64\"", "0", "\"n32\"", "0", "\"64\"", "0", "\"eabi\"", "0", "0", "\"mips\"", "0"], "File": "mips3", "Func": "mips_handle_option", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32545, "Length": 166} {"ground_truth": ["", "unsigned", "int", "mips_hard_regno_nregs", "(", "int", "regno", ",", "enum", "machine_mode", "mode", ")", "{", "if", "(", "ST_REG_P", "(", "regno", ")", ")", "return", "(", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "3", ")", "/", "4", ")", ";", "else", "if", "(", "!", "FP_REG_P", "(", "regno", ")", ")", "return", "(", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ")", ";", "else", "return", "(", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_FPREG", "-", "1", ")", "/", "UNITS_PER_FPREG", ")", ";", "}", ""], "natrual_language": ["Implement", "HARD_REGNO_NREGS", "."], "TS_V_token": ["mips", "3", "4", "1", "1"], "File": "mips3", "Func": "mips_hard_regno_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32546, "Length": 76} {"ground_truth": ["", "HOST_WIDE_INT", "mips_initial_elimination_offset", "(", "int", "from", ",", "int", "to", ")", "{", "HOST_WIDE_INT", "offset", ";", "compute_frame_size", "(", "get_frame_size", "(", ")", ")", ";", "switch", "(", "from", ")", "{", "case", "FRAME_POINTER_REGNUM", ":", "offset", "=", "0", ";", "break", ";", "case", "ARG_POINTER_REGNUM", ":", "offset", "=", "(", "cfun", "->", "machine", "->", "frame", ".", "total_size", "-", "current_function_pretend_args_size", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "TARGET_MIPS16", "&&", "to", "==", "HARD_FRAME_POINTER_REGNUM", ")", "offset", "-=", "cfun", "->", "machine", "->", "frame", ".", "args_size", ";", "return", "offset", ";", "}", ""], "natrual_language": ["Implement", "INITIAL_ELIMINATION_OFFSET", ".", "FROM", "is", "either", "the", "frame", "pointer", "or", "argument", "pointer", ".", "TO", "is", "either", "the", "stack", "pointer", "or", "hard", "frame", "pointer", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_initial_elimination_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32547, "Length": 82} {"ground_truth": ["", "static", "void", "mips_init_libfuncs", "(", "void", ")", "{", "if", "(", "TARGET_FIX_VR4120", ")", "{", "set_optab_libfunc", "(", "sdiv_optab", ",", "SImode", ",", "\"__vr4120_divsi3\"", ")", ";", "set_optab_libfunc", "(", "smod_optab", ",", "SImode", ",", "\"__vr4120_modsi3\"", ")", ";", "}", "if", "(", "TARGET_MIPS16", "&&", "mips16_hard_float", ")", "{", "set_optab_libfunc", "(", "add_optab", ",", "SFmode", ",", "\"__mips16_addsf3\"", ")", ";", "set_optab_libfunc", "(", "sub_optab", ",", "SFmode", ",", "\"__mips16_subsf3\"", ")", ";", "set_optab_libfunc", "(", "smul_optab", ",", "SFmode", ",", "\"__mips16_mulsf3\"", ")", ";", "set_optab_libfunc", "(", "sdiv_optab", ",", "SFmode", ",", "\"__mips16_divsf3\"", ")", ";", "set_optab_libfunc", "(", "eq_optab", ",", "SFmode", ",", "\"__mips16_eqsf2\"", ")", ";", "set_optab_libfunc", "(", "ne_optab", ",", "SFmode", ",", "\"__mips16_nesf2\"", ")", ";", "set_optab_libfunc", "(", "gt_optab", ",", "SFmode", ",", "\"__mips16_gtsf2\"", ")", ";", "set_optab_libfunc", "(", "ge_optab", ",", "SFmode", ",", "\"__mips16_gesf2\"", ")", ";", "set_optab_libfunc", "(", "lt_optab", ",", "SFmode", ",", "\"__mips16_ltsf2\"", ")", ";", "set_optab_libfunc", "(", "le_optab", ",", "SFmode", ",", "\"__mips16_lesf2\"", ")", ";", "set_conv_libfunc", "(", "sfix_optab", ",", "SImode", ",", "SFmode", ",", "\"__mips16_fix_truncsfsi\"", ")", ";", "set_conv_libfunc", "(", "sfloat_optab", ",", "SFmode", ",", "SImode", ",", "\"__mips16_floatsisf\"", ")", ";", "if", "(", "TARGET_DOUBLE_FLOAT", ")", "{", "set_optab_libfunc", "(", "add_optab", ",", "DFmode", ",", "\"__mips16_adddf3\"", ")", ";", "set_optab_libfunc", "(", "sub_optab", ",", "DFmode", ",", "\"__mips16_subdf3\"", ")", ";", "set_optab_libfunc", "(", "smul_optab", ",", "DFmode", ",", "\"__mips16_muldf3\"", ")", ";", "set_optab_libfunc", "(", "sdiv_optab", ",", "DFmode", ",", "\"__mips16_divdf3\"", ")", ";", "set_optab_libfunc", "(", "eq_optab", ",", "DFmode", ",", "\"__mips16_eqdf2\"", ")", ";", "set_optab_libfunc", "(", "ne_optab", ",", "DFmode", ",", "\"__mips16_nedf2\"", ")", ";", "set_optab_libfunc", "(", "gt_optab", ",", "DFmode", ",", "\"__mips16_gtdf2\"", ")", ";", "set_optab_libfunc", "(", "ge_optab", ",", "DFmode", ",", "\"__mips16_gedf2\"", ")", ";", "set_optab_libfunc", "(", "lt_optab", ",", "DFmode", ",", "\"__mips16_ltdf2\"", ")", ";", "set_optab_libfunc", "(", "le_optab", ",", "DFmode", ",", "\"__mips16_ledf2\"", ")", ";", "set_conv_libfunc", "(", "sext_optab", ",", "DFmode", ",", "SFmode", ",", "\"__mips16_extendsfdf2\"", ")", ";", "set_conv_libfunc", "(", "trunc_optab", ",", "SFmode", ",", "DFmode", ",", "\"__mips16_truncdfsf2\"", ")", ";", "set_conv_libfunc", "(", "sfix_optab", ",", "SImode", ",", "DFmode", ",", "\"__mips16_fix_truncdfsi\"", ")", ";", "set_conv_libfunc", "(", "sfloat_optab", ",", "DFmode", ",", "SImode", ",", "\"__mips16_floatsidf\"", ")", ";", "}", "}", "else", "gofast_maybe_init_libfuncs", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_INIT_LIBFUNCS", "."], "TS_V_token": ["mips", "\"__vr4120_divsi3\"", "\"__vr4120_modsi3\"", "\"__mips16_addsf3\"", "\"__mips16_subsf3\"", "\"__mips16_mulsf3\"", "\"__mips16_divsf3\"", "\"__mips16_eqsf2\"", "\"__mips16_nesf2\"", "\"__mips16_gtsf2\"", "\"__mips16_gesf2\"", "\"__mips16_ltsf2\"", "\"__mips16_lesf2\"", "\"__mips16_fix_truncsfsi\"", "\"__mips16_floatsisf\"", "\"__mips16_adddf3\"", "\"__mips16_subdf3\"", "\"__mips16_muldf3\"", "\"__mips16_divdf3\"", "\"__mips16_eqdf2\"", "\"__mips16_nedf2\"", "\"__mips16_gtdf2\"", "\"__mips16_gedf2\"", "\"__mips16_ltdf2\"", "\"__mips16_ledf2\"", "\"__mips16_extendsfdf2\"", "\"__mips16_truncdfsf2\"", "\"__mips16_fix_truncdfsi\"", "\"__mips16_floatsidf\""], "File": "mips3", "Func": "mips_init_libfuncs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32548, "Length": 297} {"ground_truth": ["", "static", "struct", "machine_function", "*", "mips_init_machine_status", "(", "void", ")", "{", "return", "(", "(", "struct", "machine_function", "*", ")", "ggc_alloc_cleared", "(", "sizeof", "(", "struct", "machine_function", ")", ")", ")", ";", "}", ""], "natrual_language": ["Allocate", "a", "chunk", "of", "memory", "for", "per-function", "machine-dependent", "data", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_init_machine_status", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32549, "Length": 27} {"ground_truth": ["", "static", "bool", "mips_in_small_data_p", "(", "tree", "decl", ")", "{", "HOST_WIDE_INT", "size", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "==", "STRING_CST", "||", "TREE_CODE", "(", "decl", ")", "==", "FUNCTION_DECL", ")", "return", "false", ";", "if", "(", "TARGET_ABICALLS", ")", "return", "false", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "==", "VAR_DECL", "&&", "DECL_SECTION_NAME", "(", "decl", ")", "!=", "0", ")", "{", "const", "char", "*", "name", ";", "name", "=", "TREE_STRING_POINTER", "(", "DECL_SECTION_NAME", "(", "decl", ")", ")", ";", "if", "(", "strcmp", "(", "name", ",", "\".sdata\"", ")", "!=", "0", "&&", "strcmp", "(", "name", ",", "\".sbss\"", ")", "!=", "0", ")", "return", "false", ";", "if", "(", "TARGET_EXPLICIT_RELOCS", "||", "!", "DECL_EXTERNAL", "(", "decl", ")", ")", "return", "true", ";", "}", "else", "if", "(", "TARGET_EMBEDDED_DATA", ")", "{", "if", "(", "TREE_CODE", "(", "decl", ")", "!=", "VAR_DECL", ")", "return", "false", ";", "if", "(", "TREE_READONLY", "(", "decl", ")", "&&", "!", "TREE_SIDE_EFFECTS", "(", "decl", ")", "&&", "(", "!", "DECL_INITIAL", "(", "decl", ")", "||", "TREE_CONSTANT", "(", "DECL_INITIAL", "(", "decl", ")", ")", ")", ")", "return", "false", ";", "}", "size", "=", "int_size_in_bytes", "(", "TREE_TYPE", "(", "decl", ")", ")", ";", "return", "(", "size", ">", "0", "&&", "size", "<=", "mips_section_threshold", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_IN_SMALL_DATA_P", ".", "Return", "true", "if", "it", "would", "be", "safe", "to", "access", "DECL", "using", "%", "gp_rel", "(", "...", ")", "(", "$", "gp", ")", "."], "TS_V_token": ["mips", "0", "\".sdata\"", "0", "\".sbss\"", "0", "0"], "File": "mips3", "Func": "mips_in_small_data_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32550, "Length": 179} {"ground_truth": ["", "static", "int", "mips_issue_rate", "(", "void", ")", "{", "switch", "(", "mips_tune", ")", "{", "case", "PROCESSOR_R4130", ":", "case", "PROCESSOR_R5400", ":", "case", "PROCESSOR_R5500", ":", "case", "PROCESSOR_R7000", ":", "case", "PROCESSOR_R9000", ":", "return", "2", ";", "case", "PROCESSOR_SB1", ":", "return", "3", ";", "default", ":", "return", "1", ";", "}", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "that", "can", "be", "issued", "per", "cycle", "."], "TS_V_token": ["mips", "2", "3", "1"], "File": "mips3", "Func": "mips_issue_rate", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32551, "Length": 43} {"ground_truth": ["", "bool", "mips_legitimize_address", "(", "rtx", "*", "xloc", ",", "enum", "machine_mode", "mode", ")", "{", "enum", "mips_symbol_type", "symbol_type", ";", "if", "(", "mips_tls_operand_p", "(", "*", "xloc", ")", ")", "{", "*", "xloc", "=", "mips_legitimize_tls_address", "(", "*", "xloc", ")", ";", "return", "true", ";", "}", "if", "(", "mips_symbolic_constant_p", "(", "*", "xloc", ",", "&", "symbol_type", ")", "&&", "mips_symbolic_address_p", "(", "symbol_type", ",", "mode", ")", "&&", "mips_split_p", "[", "symbol_type", "]", ")", "{", "*", "xloc", "=", "mips_split_symbol", "(", "0", ",", "*", "xloc", ")", ";", "return", "true", ";", "}", "if", "(", "GET_CODE", "(", "*", "xloc", ")", "==", "PLUS", "&&", "GET_CODE", "(", "XEXP", "(", "*", "xloc", ",", "1", ")", ")", "==", "CONST_INT", ")", "{", "rtx", "reg", ";", "reg", "=", "XEXP", "(", "*", "xloc", ",", "0", ")", ";", "if", "(", "!", "mips_valid_base_register_p", "(", "reg", ",", "mode", ",", "0", ")", ")", "reg", "=", "copy_to_mode_reg", "(", "Pmode", ",", "reg", ")", ";", "*", "xloc", "=", "mips_add_offset", "(", "0", ",", "reg", ",", "INTVAL", "(", "XEXP", "(", "*", "xloc", ",", "1", ")", ")", ")", ";", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["This", "function", "is", "used", "to", "implement", "LEGITIMIZE_ADDRESS", ".", "If", "*", "XLOC", "can", "be", "legitimized", "in", "a", "way", "that", "the", "generic", "machinery", "might", "not", "expect", ",", "put", "the", "new", "address", "in", "*", "XLOC", "and", "return", "true", ".", "MODE", "is", "the", "mode", "of", "the", "memory", "being", "accessed", "."], "TS_V_token": ["mips", "0", "1", "0", "0", "0", "1"], "File": "mips3", "Func": "mips_legitimize_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32552, "Length": 164} {"ground_truth": ["", "static", "void", "mips_legitimize_const_move", "(", "enum", "machine_mode", "mode", ",", "rtx", "dest", ",", "rtx", "src", ")", "{", "rtx", "base", ";", "HOST_WIDE_INT", "offset", ";", "enum", "mips_symbol_type", "symbol_type", ";", "if", "(", "GET_CODE", "(", "src", ")", "==", "CONST_INT", "&&", "!", "TARGET_MIPS16", ")", "{", "mips_move_integer", "(", "dest", ",", "INTVAL", "(", "src", ")", ")", ";", "return", ";", "}", "if", "(", "mips_tls_operand_p", "(", "src", ")", ")", "{", "emit_move_insn", "(", "dest", ",", "mips_legitimize_tls_address", "(", "src", ")", ")", ";", "return", ";", "}", "if", "(", "!", "TARGET_MIPS16", "&&", "mips_symbolic_constant_p", "(", "src", ",", "&", "symbol_type", ")", "&&", "mips_split_p", "[", "symbol_type", "]", ")", "{", "emit_move_insn", "(", "dest", ",", "mips_split_symbol", "(", "dest", ",", "src", ")", ")", ";", "return", ";", "}", "mips_split_const", "(", "src", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "!", "TARGET_MIPS16", "&&", "offset", "!=", "0", "&&", "(", "!", "no_new_pseudos", "||", "SMALL_OPERAND", "(", "offset", ")", ")", ")", "{", "base", "=", "mips_force_temporary", "(", "dest", ",", "base", ")", ";", "emit_move_insn", "(", "dest", ",", "mips_add_offset", "(", "0", ",", "base", ",", "offset", ")", ")", ";", "return", ";", "}", "src", "=", "force_const_mem", "(", "mode", ",", "src", ")", ";", "if", "(", "!", "memory_operand", "(", "src", ",", "VOIDmode", ")", ")", "src", "=", "replace_equiv_address", "(", "src", ",", "mips_split_symbol", "(", "dest", ",", "XEXP", "(", "src", ",", "0", ")", ")", ")", ";", "emit_move_insn", "(", "dest", ",", "src", ")", ";", "}", ""], "natrual_language": ["Subroutine", "of", "mips_legitimize_move", ".", "Move", "constant", "SRC", "into", "register", "DEST", "given", "that", "SRC", "satisfies", "immediate_operand", "but", "does", "n't", "satisfy", "move_operand", "."], "TS_V_token": ["mips", "0", "0", "0"], "File": "mips3", "Func": "mips_legitimize_const_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32553, "Length": 209} {"ground_truth": ["", "bool", "mips_legitimize_move", "(", "enum", "machine_mode", "mode", ",", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "!", "register_operand", "(", "dest", ",", "mode", ")", "&&", "!", "reg_or_0_operand", "(", "src", ",", "mode", ")", ")", "{", "emit_move_insn", "(", "dest", ",", "force_reg", "(", "mode", ",", "src", ")", ")", ";", "return", "true", ";", "}", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_WORD", "&&", "REG_P", "(", "src", ")", "&&", "MD_REG_P", "(", "REGNO", "(", "src", ")", ")", "&&", "REG_P", "(", "dest", ")", "&&", "GP_REG_P", "(", "REGNO", "(", "dest", ")", ")", ")", "{", "int", "other_regno", "=", "REGNO", "(", "src", ")", "==", "HI_REGNUM", "?", "LO_REGNUM", ":", "HI_REGNUM", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "<=", "4", ")", "emit_insn", "(", "gen_mfhilo_si", "(", "gen_rtx_REG", "(", "SImode", ",", "REGNO", "(", "dest", ")", ")", ",", "gen_rtx_REG", "(", "SImode", ",", "REGNO", "(", "src", ")", ")", ",", "gen_rtx_REG", "(", "SImode", ",", "other_regno", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_mfhilo_di", "(", "gen_rtx_REG", "(", "DImode", ",", "REGNO", "(", "dest", ")", ")", ",", "gen_rtx_REG", "(", "DImode", ",", "REGNO", "(", "src", ")", ")", ",", "gen_rtx_REG", "(", "DImode", ",", "other_regno", ")", ")", ")", ";", "return", "true", ";", "}", "if", "(", "CONSTANT_P", "(", "src", ")", "&&", "!", "move_operand", "(", "src", ",", "mode", ")", ")", "{", "mips_legitimize_const_move", "(", "mode", ",", "dest", ",", "src", ")", ";", "set_unique_reg_note", "(", "get_last_insn", "(", ")", ",", "REG_EQUAL", ",", "copy_rtx", "(", "src", ")", ")", ";", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["If", "(", "set", "DEST", "SRC", ")", "is", "not", "a", "valid", "instruction", ",", "emit", "an", "equivalent", "sequence", "that", "is", "valid", "."], "TS_V_token": ["mips", "4"], "File": "mips3", "Func": "mips_legitimize_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32554, "Length": 226} {"ground_truth": ["", "static", "rtx", "mips_legitimize_tls_address", "(", "rtx", "loc", ")", "{", "rtx", "dest", ",", "insn", ",", "v0", ",", "v1", ",", "tmp1", ",", "tmp2", ",", "eqv", ";", "enum", "tls_model", "model", ";", "v0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_RETURN", ")", ";", "v1", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_RETURN", "+", "1", ")", ";", "model", "=", "SYMBOL_REF_TLS_MODEL", "(", "loc", ")", ";", "switch", "(", "model", ")", "{", "case", "TLS_MODEL_GLOBAL_DYNAMIC", ":", "insn", "=", "mips_call_tls_get_addr", "(", "loc", ",", "SYMBOL_TLSGD", ",", "v0", ")", ";", "dest", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_libcall_block", "(", "insn", ",", "dest", ",", "v0", ",", "loc", ")", ";", "break", ";", "case", "TLS_MODEL_LOCAL_DYNAMIC", ":", "insn", "=", "mips_call_tls_get_addr", "(", "loc", ",", "SYMBOL_TLSLDM", ",", "v0", ")", ";", "tmp1", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "eqv", "=", "gen_rtx_UNSPEC", "(", "Pmode", ",", "gen_rtvec", "(", "1", ",", "const0_rtx", ")", ",", "UNSPEC_TLS_LDM", ")", ";", "emit_libcall_block", "(", "insn", ",", "tmp1", ",", "v0", ",", "eqv", ")", ";", "tmp2", "=", "mips_unspec_offset_high", "(", "NULL", ",", "tmp1", ",", "loc", ",", "SYMBOL_DTPREL", ")", ";", "dest", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "tmp2", ",", "mips_unspec_address", "(", "loc", ",", "SYMBOL_DTPREL", ")", ")", ";", "break", ";", "case", "TLS_MODEL_INITIAL_EXEC", ":", "tmp1", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "tmp2", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_GOTTPREL", ")", ";", "if", "(", "Pmode", "==", "DImode", ")", "{", "emit_insn", "(", "gen_tls_get_tp_di", "(", "v1", ")", ")", ";", "emit_insn", "(", "gen_load_gotdi", "(", "tmp1", ",", "pic_offset_table_rtx", ",", "tmp2", ")", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_tls_get_tp_si", "(", "v1", ")", ")", ";", "emit_insn", "(", "gen_load_gotsi", "(", "tmp1", ",", "pic_offset_table_rtx", ",", "tmp2", ")", ")", ";", "}", "dest", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "dest", ",", "tmp1", ",", "v1", ")", ")", ";", "break", ";", "case", "TLS_MODEL_LOCAL_EXEC", ":", "if", "(", "Pmode", "==", "DImode", ")", "emit_insn", "(", "gen_tls_get_tp_di", "(", "v1", ")", ")", ";", "else", "emit_insn", "(", "gen_tls_get_tp_si", "(", "v1", ")", ")", ";", "tmp1", "=", "mips_unspec_offset_high", "(", "NULL", ",", "v1", ",", "loc", ",", "SYMBOL_TPREL", ")", ";", "dest", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "tmp1", ",", "mips_unspec_address", "(", "loc", ",", "SYMBOL_TPREL", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "dest", ";", "}", ""], "natrual_language": ["Generate", "the", "code", "to", "access", "LOC", ",", "a", "thread", "local", "SYMBOL_REF", ".", "The", "return", "value", "will", "be", "a", "valid", "address", "and", "move_operand", "(", "either", "a", "REG", "or", "a", "LO_SUM", ")", "."], "TS_V_token": ["mips", "1", "1"], "File": "mips3", "Func": "mips_legitimize_tls_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32555, "Length": 331} {"ground_truth": ["", "bool", "mips_linked_madd_p", "(", "rtx", "prev", ",", "rtx", "insn", ")", "{", "rtx", "x", ";", "x", "=", "single_set", "(", "insn", ")", ";", "if", "(", "x", "==", "0", ")", "return", "false", ";", "x", "=", "SET_SRC", "(", "x", ")", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "PLUS", "&&", "GET_CODE", "(", "XEXP", "(", "x", ",", "0", ")", ")", "==", "MULT", "&&", "reg_set_p", "(", "XEXP", "(", "x", ",", "1", ")", ",", "prev", ")", ")", "return", "true", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "MINUS", "&&", "GET_CODE", "(", "XEXP", "(", "x", ",", "1", ")", ")", "==", "MULT", "&&", "reg_set_p", "(", "XEXP", "(", "x", ",", "0", ")", ",", "prev", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "INSN", "is", "a", "multiply-add", "or", "multiply-subtract", "instruction", "and", "PREV", "assigns", "to", "the", "accumulator", "operand", "."], "TS_V_token": ["mips", "0", "0", "1", "1", "0"], "File": "mips3", "Func": "mips_linked_madd_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32556, "Length": 112} {"ground_truth": ["", "static", "void", "mips_load_call_address", "(", "rtx", "dest", ",", "rtx", "addr", ",", "int", "sibcall_p", ")", "{", "if", "(", "TARGET_EXPLICIT_RELOCS", "&&", "!", "(", "sibcall_p", "&&", "TARGET_NEWABI", ")", "&&", "global_got_operand", "(", "addr", ",", "VOIDmode", ")", ")", "{", "rtx", "high", ",", "lo_sum_symbol", ";", "high", "=", "mips_unspec_offset_high", "(", "dest", ",", "pic_offset_table_rtx", ",", "addr", ",", "SYMBOL_GOTOFF_CALL", ")", ";", "lo_sum_symbol", "=", "mips_unspec_address", "(", "addr", ",", "SYMBOL_GOTOFF_CALL", ")", ";", "if", "(", "Pmode", "==", "SImode", ")", "emit_insn", "(", "gen_load_callsi", "(", "dest", ",", "high", ",", "lo_sum_symbol", ")", ")", ";", "else", "emit_insn", "(", "gen_load_calldi", "(", "dest", ",", "high", ",", "lo_sum_symbol", ")", ")", ";", "}", "else", "emit_move_insn", "(", "dest", ",", "addr", ")", ";", "}", ""], "natrual_language": ["Load", "function", "address", "ADDR", "into", "register", "DEST", ".", "SIBCALL_P", "is", "true", "if", "the", "address", "is", "needed", "for", "a", "sibling", "call", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_load_call_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32557, "Length": 101} {"ground_truth": ["", "static", "void", "mips_macc_chains_record", "(", "rtx", "insn", ")", "{", "if", "(", "get_attr_may_clobber_hilo", "(", "insn", ")", ")", "mips_macc_chains_last_hilo", "=", "insn", ";", "}", ""], "natrual_language": ["A", "TUNE_MACC_CHAINS", "helper", "function", ".", "Record", "that", "instruction", "INSN", "has", "been", "scheduled", ",", "updating", "mips_macc_chains_last_hilo", "appropriately", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_macc_chains_record", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32558, "Length": 20} {"ground_truth": ["", "static", "void", "mips_macc_chains_reorder", "(", "rtx", "*", "ready", ",", "int", "nready", ")", "{", "int", "i", ",", "j", ";", "if", "(", "mips_macc_chains_last_hilo", "!=", "0", ")", "for", "(", "i", "=", "nready", "-", "1", ";", "i", ">=", "0", ";", "i", "--", ")", "if", "(", "mips_linked_madd_p", "(", "mips_macc_chains_last_hilo", ",", "ready", "[", "i", "]", ")", ")", "{", "for", "(", "j", "=", "nready", "-", "1", ";", "j", ">", "i", ";", "j", "--", ")", "if", "(", "recog_memoized", "(", "ready", "[", "j", "]", ")", ">=", "0", "&&", "get_attr_may_clobber_hilo", "(", "ready", "[", "j", "]", ")", ")", "{", "mips_promote_ready", "(", "ready", ",", "i", ",", "j", ")", ";", "break", ";", "}", "break", ";", "}", "}", ""], "natrual_language": ["A", "TUNE_MACC_CHAINS", "helper", "function", ".", "Search", "ready", "queue", "READY", ",", "which", "has", "NREADY", "elements", ",", "looking", "for", "a", "multiply-add", "or", "multiply-subtract", "instruction", "that", "is", "cumulative", "with", "mips_macc_chains_last_hilo", ".", "If", "there", "is", "one", ",", "promote", "it", "ahead", "of", "anything", "else", "that", "might", "clobber", "hi", "or", "lo", "."], "TS_V_token": ["mips", "0", "1", "0", "1", "0"], "File": "mips3", "Func": "mips_macc_chains_reorder", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32559, "Length": 103} {"ground_truth": ["", "static", "bool", "mips_matching_cpu_name_p", "(", "const", "char", "*", "canonical", ",", "const", "char", "*", "given", ")", "{", "if", "(", "mips_strict_matching_cpu_name_p", "(", "canonical", ",", "given", ")", ")", "return", "true", ";", "if", "(", "TOLOWER", "(", "*", "given", ")", "==", "'r'", ")", "given", "++", ";", "if", "(", "!", "ISDIGIT", "(", "*", "given", ")", ")", "return", "false", ";", "if", "(", "TOLOWER", "(", "canonical", "[", "0", "]", ")", "==", "'v'", "&&", "TOLOWER", "(", "canonical", "[", "1", "]", ")", "==", "'r'", ")", "canonical", "+=", "2", ";", "else", "if", "(", "TOLOWER", "(", "canonical", "[", "0", "]", ")", "==", "'r'", "&&", "TOLOWER", "(", "canonical", "[", "1", "]", ")", "==", "'m'", ")", "canonical", "+=", "2", ";", "else", "if", "(", "TOLOWER", "(", "canonical", "[", "0", "]", ")", "==", "'r'", ")", "canonical", "+=", "1", ";", "return", "mips_strict_matching_cpu_name_p", "(", "canonical", ",", "given", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "GIVEN", "matches", "CANONICAL", ",", "where", "GIVEN", "is", "a", "user-supplied", "CPU", "name", ".", "We", "'ve", "traditionally", "allowed", "a", "lot", "of", "variation", "here", ".", "Note", ":", "this", "function", "is", "shared", "between", "GCC", "and", "GAS", "."], "TS_V_token": ["mips", "0", "1", "2", "0", "1", "2", "0", "1"], "File": "mips3", "Func": "mips_matching_cpu_name_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32560, "Length": 131} {"ground_truth": ["", "static", "void", "mips_move_integer", "(", "rtx", "dest", ",", "unsigned", "HOST_WIDE_INT", "value", ")", "{", "struct", "mips_integer_op", "codes", "[", "MIPS_MAX_INTEGER_OPS", "]", ";", "enum", "machine_mode", "mode", ";", "unsigned", "int", "i", ",", "cost", ";", "rtx", "x", ";", "mode", "=", "GET_MODE", "(", "dest", ")", ";", "cost", "=", "mips_build_integer", "(", "codes", ",", "value", ")", ";", "x", "=", "GEN_INT", "(", "codes", "[", "0", "]", ".", "value", ")", ";", "for", "(", "i", "=", "1", ";", "i", "<", "cost", ";", "i", "++", ")", "{", "if", "(", "no_new_pseudos", ")", "emit_move_insn", "(", "dest", ",", "x", ")", ",", "x", "=", "dest", ";", "else", "x", "=", "force_reg", "(", "mode", ",", "x", ")", ";", "x", "=", "gen_rtx_fmt_ee", "(", "codes", "[", "i", "]", ".", "code", ",", "mode", ",", "x", ",", "GEN_INT", "(", "codes", "[", "i", "]", ".", "value", ")", ")", ";", "}", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "dest", ",", "x", ")", ")", ";", "}", ""], "natrual_language": ["Move", "VALUE", "into", "register", "DEST", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips3", "Func": "mips_move_integer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32561, "Length": 139} {"ground_truth": ["", "static", "int", "mips_multipass_dfa_lookahead", "(", "void", ")", "{", "if", "(", "mips_tune", "==", "PROCESSOR_SB1", ")", "return", "4", ";", "return", "0", ";", "}", ""], "natrual_language": ["Implements", "TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD", ".", "This", "should", "be", "as", "wide", "as", "the", "scheduling", "freedom", "in", "the", "DFA", "."], "TS_V_token": ["mips", "4", "0"], "File": "mips3", "Func": "mips_multipass_dfa_lookahead", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32562, "Length": 20} {"ground_truth": ["", "void", "mips_order_regs_for_local_alloc", "(", "void", ")", "{", "register", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "FIRST_PSEUDO_REGISTER", ";", "i", "++", ")", "reg_alloc_order", "[", "i", "]", "=", "i", ";", "if", "(", "TARGET_MIPS16", ")", "{", "reg_alloc_order", "[", "0", "]", "=", "24", ";", "reg_alloc_order", "[", "24", "]", "=", "0", ";", "}", "}", ""], "natrual_language": ["On", "the", "mips16", ",", "we", "want", "to", "allocate", "$", "24", "(", "T_REG", ")", "before", "other", "registers", "for", "instructions", "for", "which", "it", "is", "possible", ".", "This", "helps", "avoid", "shuffling", "registers", "around", "in", "order", "to", "set", "up", "for", "an", "xor", ",", "encouraging", "the", "compiler", "to", "use", "a", "cmp", "instead", "."], "TS_V_token": ["mips", "0", "0", "24", "24", "0"], "File": "mips3", "Func": "mips_order_regs_for_local_alloc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32563, "Length": 51} {"ground_truth": ["", "void", "mips_output_aligned_bss", "(", "FILE", "*", "stream", ",", "tree", "decl", ",", "const", "char", "*", "name", ",", "unsigned", "HOST_WIDE_INT", "size", ",", "int", "align", ")", "{", "extern", "tree", "last_assemble_variable_decl", ";", "if", "(", "mips_in_small_data_p", "(", "decl", ")", ")", "named_section", "(", "0", ",", "\".sbss\"", ",", "0", ")", ";", "else", "bss_section", "(", ")", ";", "ASM_OUTPUT_ALIGN", "(", "stream", ",", "floor_log2", "(", "align", "/", "BITS_PER_UNIT", ")", ")", ";", "last_assemble_variable_decl", "=", "decl", ";", "ASM_DECLARE_OBJECT_NAME", "(", "stream", ",", "name", ",", "decl", ")", ";", "ASM_OUTPUT_SKIP", "(", "stream", ",", "size", "!=", "0", "?", "size", ":", "1", ")", ";", "}", ""], "natrual_language": ["Implement", "ASM_OUTPUT_ALIGNED_BSS", ".", "This", "differs", "from", "the", "default", "only", "in", "the", "use", "of", "sbss", "."], "TS_V_token": ["mips", "0", "\".sbss\"", "0", "0", "1"], "File": "mips3", "Func": "mips_output_aligned_bss", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32564, "Length": 87} {"ground_truth": ["", "void", "mips_output_aligned_decl_common", "(", "FILE", "*", "stream", ",", "tree", "decl", ",", "const", "char", "*", "name", ",", "unsigned", "HOST_WIDE_INT", "size", ",", "unsigned", "int", "align", ")", "{", "if", "(", "TARGET_EMBEDDED_DATA", "&&", "TARGET_UNINIT_CONST_IN_RODATA", "&&", "TREE_CODE", "(", "decl", ")", "==", "VAR_DECL", "&&", "TREE_READONLY", "(", "decl", ")", "&&", "(", "DECL_INITIAL", "(", "decl", ")", "==", "0", "||", "DECL_INITIAL", "(", "decl", ")", "==", "error_mark_node", ")", ")", "{", "if", "(", "TREE_PUBLIC", "(", "decl", ")", "&&", "DECL_NAME", "(", "decl", ")", ")", "targetm", ".", "asm_out", ".", "globalize_label", "(", "stream", ",", "name", ")", ";", "readonly_data_section", "(", ")", ";", "ASM_OUTPUT_ALIGN", "(", "stream", ",", "floor_log2", "(", "align", "/", "BITS_PER_UNIT", ")", ")", ";", "mips_declare_object", "(", "stream", ",", "name", ",", "\"\"", ",", "\":\\n\\t.space\\t\"", "HOST_WIDE_INT_PRINT_UNSIGNED", "\"\\n\"", ",", "size", ")", ";", "}", "else", "mips_declare_common_object", "(", "stream", ",", "name", ",", "\"\\n\\t.comm\\t\"", ",", "size", ",", "align", ",", "true", ")", ";", "}", ""], "natrual_language": ["Implement", "ASM_OUTPUT_ALIGNED_DECL_COMMON", ".", "This", "is", "usually", "the", "same", "as", "the", "elfos.h", "version", ",", "but", "we", "also", "need", "to", "handle", "-muninit-const-in-rodata", "."], "TS_V_token": ["mips", "0", "\"\"", "\":\\n\\t.space\\t\"", "\"\\n\"", "\"\\n\\t.comm\\t\""], "File": "mips3", "Func": "mips_output_aligned_decl_common", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32565, "Length": 131} {"ground_truth": ["", "void", "mips_output_ascii", "(", "FILE", "*", "stream", ",", "const", "char", "*", "string_param", ",", "size_t", "len", ",", "const", "char", "*", "prefix", ")", "{", "size_t", "i", ";", "int", "cur_pos", "=", "17", ";", "register", "const", "unsigned", "char", "*", "string", "=", "(", "const", "unsigned", "char", "*", ")", "string_param", ";", "fprintf", "(", "stream", ",", "\"%s\\\"\"", ",", "prefix", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "len", ";", "i", "++", ")", "{", "register", "int", "c", "=", "string", "[", "i", "]", ";", "if", "(", "ISPRINT", "(", "c", ")", ")", "{", "if", "(", "c", "==", "'\\\\'", "||", "c", "==", "'\\\"'", ")", "{", "putc", "(", "'\\\\'", ",", "stream", ")", ";", "cur_pos", "++", ";", "}", "putc", "(", "c", ",", "stream", ")", ";", "cur_pos", "++", ";", "}", "else", "{", "fprintf", "(", "stream", ",", "\"\\\\%03o\"", ",", "c", ")", ";", "cur_pos", "+=", "4", ";", "}", "if", "(", "cur_pos", ">", "72", "&&", "i", "+", "1", "<", "len", ")", "{", "cur_pos", "=", "17", ";", "fprintf", "(", "stream", ",", "\"\\\"\\n%s\\\"\"", ",", "prefix", ")", ";", "}", "}", "fprintf", "(", "stream", ",", "\"\\\"\\n\"", ")", ";", "}", ""], "natrual_language": ["Output", "an", "ASCII", "string", ",", "in", "a", "space-saving", "way", ".", "PREFIX", "is", "the", "string", "that", "should", "be", "written", "before", "the", "opening", "quote", ",", "such", "as", "``", "\\t.ascii\\t", "''", "for", "real", "string", "data", "or", "``", "\\t", "#", "``", "for", "a", "comment", "."], "TS_V_token": ["mips", "17", "\"%s\\\"\"", "0", "\"\\\\%03o\"", "4", "72", "1", "17", "\"\\\"\\n%s\\\"\"", "\"\\\"\\n\""], "File": "mips3", "Func": "mips_output_ascii", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32566, "Length": 169} {"ground_truth": ["", "static", "void", "mips_output_cplocal", "(", "void", ")", "{", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", "&&", "cfun", "->", "machine", "->", "global_pointer", ">", "0", "&&", "cfun", "->", "machine", "->", "global_pointer", "!=", "GLOBAL_POINTER_REGNUM", ")", "output_asm_insn", "(", "\".cplocal %+\"", ",", "0", ")", ";", "}", ""], "natrual_language": ["If", "we", "'re", "generating", "n32", "or", "n64", "abicalls", ",", "and", "the", "current", "function", "does", "not", "use", "$", "28", "as", "its", "global", "pointer", ",", "emit", "a", "cplocal", "directive", ".", "Use", "pic_offset_table_rtx", "as", "the", "argument", "to", "the", "directive", "."], "TS_V_token": ["mips", "0", "\".cplocal %+\"", "0"], "File": "mips3", "Func": "mips_output_cplocal", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32567, "Length": 36} {"ground_truth": ["", "void", "mips_output_filename", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ")", "{", "if", "(", "write_symbols", "==", "DWARF2_DEBUG", ")", "return", ";", "else", "if", "(", "mips_output_filename_first_time", ")", "{", "mips_output_filename_first_time", "=", "0", ";", "num_source_filenames", "+=", "1", ";", "current_function_file", "=", "name", ";", "fprintf", "(", "stream", ",", "\"\\t.file\\t%d \"", ",", "num_source_filenames", ")", ";", "output_quoted_string", "(", "stream", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "stream", ")", ";", "}", "else", "if", "(", "write_symbols", "==", "DBX_DEBUG", ")", "return", ";", "else", "if", "(", "name", "!=", "current_function_file", "&&", "strcmp", "(", "name", ",", "current_function_file", ")", "!=", "0", ")", "{", "num_source_filenames", "+=", "1", ";", "current_function_file", "=", "name", ";", "fprintf", "(", "stream", ",", "\"\\t.file\\t%d \"", ",", "num_source_filenames", ")", ";", "output_quoted_string", "(", "stream", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "stream", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "a", "new", "filename", "to", "a", "stream", ".", "If", "we", "are", "smuggling", "stabs", ",", "try", "to", "put", "out", "a", "MIPS", "ECOFF", "file", "and", "a", "stab", "."], "TS_V_token": ["mips", "0", "1", "\"\\t.file\\t%d \"", "0", "1", "\"\\t.file\\t%d \""], "File": "mips3", "Func": "mips_output_filename", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32568, "Length": 122} {"ground_truth": ["", "static", "void", "mips_output_function_prologue", "(", "FILE", "*", "file", ",", "HOST_WIDE_INT", "size", "ATTRIBUTE_UNUSED", ")", "{", "const", "char", "*", "fnname", ";", "HOST_WIDE_INT", "tsize", "=", "cfun", "->", "machine", "->", "frame", ".", "total_size", ";", "if", "(", "debug_info_level", "!=", "DINFO_LEVEL_TERSE", "&&", "write_symbols", "==", "SDB_DEBUG", ")", "SDB_OUTPUT_SOURCE_LINE", "(", "file", ",", "DECL_SOURCE_LINE", "(", "current_function_decl", ")", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "!", "TARGET_SOFT_FLOAT", "&&", "current_function_args_info", ".", "fp_code", "!=", "0", ")", "build_mips16_function_stub", "(", "file", ")", ";", "if", "(", "!", "FUNCTION_NAME_ALREADY_DECLARED", ")", "{", "fnname", "=", "XSTR", "(", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ",", "0", ")", ";", "if", "(", "!", "flag_inhibit_size_directive", ")", "{", "fputs", "(", "\"\\t.ent\\t\"", ",", "file", ")", ";", "assemble_name", "(", "file", ",", "fnname", ")", ";", "fputs", "(", "\"\\n\"", ",", "file", ")", ";", "}", "assemble_name", "(", "file", ",", "fnname", ")", ";", "fputs", "(", "\":\\n\"", ",", "file", ")", ";", "}", "if", "(", "TARGET_IRIX", "&&", "mips_abi", "==", "ABI_32", ")", "TREE_ASM_WRITTEN", "(", "DECL_NAME", "(", "cfun", "->", "decl", ")", ")", "=", "1", ";", "if", "(", "!", "flag_inhibit_size_directive", ")", "{", "fprintf", "(", "file", ",", "\"\\t.frame\\t%s,\"", "HOST_WIDE_INT_PRINT_DEC", "\",%s\\t\\t\"", "\"# vars= \"", "HOST_WIDE_INT_PRINT_DEC", "\", regs= %d/%d\"", "\", args= \"", "HOST_WIDE_INT_PRINT_DEC", "\", gp= \"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "(", "reg_names", "[", "(", "frame_pointer_needed", ")", "?", "HARD_FRAME_POINTER_REGNUM", ":", "STACK_POINTER_REGNUM", "]", ")", ",", "(", "(", "frame_pointer_needed", "&&", "TARGET_MIPS16", ")", "?", "tsize", "-", "cfun", "->", "machine", "->", "frame", ".", "args_size", ":", "tsize", ")", ",", "reg_names", "[", "GP_REG_FIRST", "+", "31", "]", ",", "cfun", "->", "machine", "->", "frame", ".", "var_size", ",", "cfun", "->", "machine", "->", "frame", ".", "num_gp", ",", "cfun", "->", "machine", "->", "frame", ".", "num_fp", ",", "cfun", "->", "machine", "->", "frame", ".", "args_size", ",", "cfun", "->", "machine", "->", "frame", ".", "cprestore_size", ")", ";", "fprintf", "(", "file", ",", "\"\\t.mask\\t0x%08x,\"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "cfun", "->", "machine", "->", "frame", ".", "mask", ",", "cfun", "->", "machine", "->", "frame", ".", "gp_save_offset", ")", ";", "fprintf", "(", "file", ",", "\"\\t.fmask\\t0x%08x,\"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "cfun", "->", "machine", "->", "frame", ".", "fmask", ",", "cfun", "->", "machine", "->", "frame", ".", "fp_save_offset", ")", ";", "}", "if", "(", "TARGET_ABICALLS", "&&", "!", "TARGET_NEWABI", "&&", "cfun", "->", "machine", "->", "global_pointer", ">", "0", ")", "{", "if", "(", "!", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "output_asm_insn", "(", "\"%(.cpload\\t%^%)\"", ",", "0", ")", ";", "else", "output_asm_insn", "(", "\"%(.cpload\\t%^\\n\\t%<\"", ",", "0", ")", ";", "}", "else", "if", "(", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "output_asm_insn", "(", "\"%(%<\"", ",", "0", ")", ";", "mips_output_cplocal", "(", ")", ";", "}", ""], "natrual_language": ["Set", "up", "the", "stack", "and", "frame", "(", "if", "desired", ")", "for", "the", "function", "."], "TS_V_token": ["mips", "0", "0", "0", "\"\\t.ent\\t\"", "\"\\n\"", "\":\\n\"", "1", "\"\\t.frame\\t%s,\"", "\",%s\\t\\t\"", "\"# vars= \"", "\", regs= %d/%d\"", "\", args= \"", "\", gp= \"", "\"\\n\"", "31", "\"\\t.mask\\t0x%08x,\"", "\"\\n\"", "\"\\t.fmask\\t0x%08x,\"", "\"\\n\"", "0", "\"%(.cpload\\t%^%)\"", "0", "\"%(.cpload\\t%^\\n\\t%<\"", "0", "\"%(%<\"", "0"], "File": "mips3", "Func": "mips_output_function_prologue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32569, "Length": 369} {"ground_truth": ["", "const", "char", "*", "mips_output_load_label", "(", "void", ")", "{", "if", "(", "TARGET_EXPLICIT_RELOCS", ")", "switch", "(", "mips_abi", ")", "{", "case", "ABI_N32", ":", "return", "\"%[lw\\t%@,%%got_page(%0)(%+)\\n\\taddiu\\t%@,%@,%%got_ofst(%0)\"", ";", "case", "ABI_64", ":", "return", "\"%[ld\\t%@,%%got_page(%0)(%+)\\n\\tdaddiu\\t%@,%@,%%got_ofst(%0)\"", ";", "default", ":", "if", "(", "ISA_HAS_LOAD_DELAY", ")", "return", "\"%[lw\\t%@,%%got(%0)(%+)%#\\n\\taddiu\\t%@,%@,%%lo(%0)\"", ";", "return", "\"%[lw\\t%@,%%got(%0)(%+)\\n\\taddiu\\t%@,%@,%%lo(%0)\"", ";", "}", "else", "{", "if", "(", "Pmode", "==", "DImode", ")", "return", "\"%[dla\\t%@,%0\"", ";", "else", "return", "\"%[la\\t%@,%0\"", ";", "}", "}", ""], "natrual_language": ["Return", "an", "asm", "sequence", "to", "start", "a", "noat", "block", "and", "load", "the", "address", "of", "a", "label", "into", "$", "1", "."], "TS_V_token": ["mips", "\"%[lw\\t%@,%%got_page(%0)(%+)\\n\\taddiu\\t%@,%@,%%got_ofst(%0)\"", "\"%[ld\\t%@,%%got_page(%0)(%+)\\n\\tdaddiu\\t%@,%@,%%got_ofst(%0)\"", "\"%[lw\\t%@,%%got(%0)(%+)%#\\n\\taddiu\\t%@,%@,%%lo(%0)\"", "\"%[lw\\t%@,%%got(%0)(%+)\\n\\taddiu\\t%@,%@,%%lo(%0)\"", "\"%[dla\\t%@,%0\"", "\"%[la\\t%@,%0\""], "File": "mips3", "Func": "mips_output_load_label", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32570, "Length": 59} {"ground_truth": ["", "static", "void", "mips_output_mi_thunk", "(", "FILE", "*", "file", ",", "tree", "thunk_fndecl", "ATTRIBUTE_UNUSED", ",", "HOST_WIDE_INT", "delta", ",", "HOST_WIDE_INT", "vcall_offset", ",", "tree", "function", ")", "{", "rtx", "this", ",", "temp1", ",", "temp2", ",", "insn", ",", "fnaddr", ";", "no_new_pseudos", "=", "1", ";", "reload_completed", "=", "1", ";", "reset_block_changes", "(", ")", ";", "if", "(", "TARGET_ABICALLS", ")", "cfun", "->", "machine", "->", "global_pointer", "=", "REGNO", "(", "pic_offset_table_rtx", ")", "=", "TARGET_NEWABI", "?", "15", ":", "GLOBAL_POINTER_REGNUM", ";", "mips_emit_loadgp", "(", ")", ";", "temp1", "=", "gen_rtx_REG", "(", "Pmode", ",", "2", ")", ";", "temp2", "=", "gen_rtx_REG", "(", "Pmode", ",", "3", ")", ";", "if", "(", "aggregate_value_p", "(", "TREE_TYPE", "(", "TREE_TYPE", "(", "function", ")", ")", ",", "function", ")", ")", "this", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", "+", "1", ")", ";", "else", "this", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "delta", "!=", "0", ")", "{", "rtx", "offset", "=", "GEN_INT", "(", "delta", ")", ";", "if", "(", "!", "SMALL_OPERAND", "(", "delta", ")", ")", "{", "emit_move_insn", "(", "temp1", ",", "offset", ")", ";", "offset", "=", "temp1", ";", "}", "emit_insn", "(", "gen_add3_insn", "(", "this", ",", "this", ",", "offset", ")", ")", ";", "}", "if", "(", "vcall_offset", "!=", "0", ")", "{", "rtx", "addr", ";", "emit_move_insn", "(", "temp1", ",", "gen_rtx_MEM", "(", "Pmode", ",", "this", ")", ")", ";", "addr", "=", "mips_add_offset", "(", "temp2", ",", "temp1", ",", "vcall_offset", ")", ";", "emit_move_insn", "(", "temp1", ",", "gen_rtx_MEM", "(", "Pmode", ",", "addr", ")", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "this", ",", "this", ",", "temp1", ")", ")", ";", "}", "fnaddr", "=", "XEXP", "(", "DECL_RTL", "(", "function", ")", ",", "0", ")", ";", "if", "(", "TARGET_MIPS16", "||", "TARGET_ABICALLS", "||", "TARGET_LONG_CALLS", ")", "{", "if", "(", "TARGET_ABICALLS", "&&", "!", "mips_dangerous_for_la25_p", "(", "fnaddr", ")", ")", "temp1", "=", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "mips_load_call_address", "(", "temp1", ",", "fnaddr", ",", "true", ")", ";", "if", "(", "TARGET_ABICALLS", "&&", "REGNO", "(", "temp1", ")", "!=", "PIC_FUNCTION_ADDR_REGNUM", ")", "emit_move_insn", "(", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ",", "temp1", ")", ";", "emit_jump_insn", "(", "gen_indirect_jump", "(", "temp1", ")", ")", ";", "}", "else", "{", "insn", "=", "emit_call_insn", "(", "gen_sibcall_internal", "(", "fnaddr", ",", "const0_rtx", ")", ")", ";", "SIBLING_CALL_P", "(", "insn", ")", "=", "1", ";", "}", "insn", "=", "get_insns", "(", ")", ";", "insn_locators_initialize", "(", ")", ";", "split_all_insns_noflow", "(", ")", ";", "if", "(", "TARGET_MIPS16", ")", "mips16_lay_out_constants", "(", ")", ";", "shorten_branches", "(", "insn", ")", ";", "final_start_function", "(", "insn", ",", "file", ",", "1", ")", ";", "final", "(", "insn", ",", "file", ",", "1", ")", ";", "final_end_function", "(", ")", ";", "reload_completed", "=", "0", ";", "no_new_pseudos", "=", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_OUTPUT_MI_THUNK", ".", "Generate", "rtl", "rather", "than", "asm", "text", "in", "order", "to", "avoid", "duplicating", "too", "much", "logic", "from", "elsewhere", "."], "TS_V_token": ["mips", "1", "1", "15", "2", "3", "1", "0", "0", "0", "1", "1", "1", "0", "0"], "File": "mips3", "Func": "mips_output_mi_thunk", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32571, "Length": 392} {"ground_truth": ["", "bool", "mips_pad_arg_upward", "(", "enum", "machine_mode", "mode", ",", "tree", "type", ")", "{", "if", "(", "!", "BYTES_BIG_ENDIAN", ")", "return", "true", ";", "if", "(", "type", "!=", "0", "?", "INTEGRAL_TYPE_P", "(", "type", ")", "||", "POINTER_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_INT", ")", "return", "false", ";", "if", "(", "mips_abi", "==", "ABI_O64", ")", "if", "(", "type", "!=", "0", "?", "FLOAT_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "return", "false", ";", "if", "(", "mips_abi", "!=", "ABI_EABI", ")", "return", "true", ";", "if", "(", "mode", "!=", "BLKmode", ")", "return", "(", "GET_MODE_BITSIZE", "(", "mode", ")", ">=", "PARM_BOUNDARY", ")", ";", "else", "return", "(", "int_size_in_bytes", "(", "type", ")", ">=", "(", "PARM_BOUNDARY", "/", "BITS_PER_UNIT", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "FUNCTION_ARG_PADDING", "(", "MODE", ",", "TYPE", ")", "should", "return", "upward", "rather", "than", "downward", ".", "In", "other", "words", ",", "return", "true", "if", "the", "first", "byte", "of", "the", "stack", "slot", "has", "useful", "data", ",", "false", "if", "the", "last", "byte", "does", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_pad_arg_upward", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32572, "Length": 113} {"ground_truth": ["", "bool", "mips_pad_reg_upward", "(", "enum", "machine_mode", "mode", ",", "tree", "type", ")", "{", "if", "(", "type", "!=", "0", "?", "FLOAT_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "return", "!", "BYTES_BIG_ENDIAN", ";", "return", "mips_pad_arg_upward", "(", "mode", ",", "type", ")", ";", "}", ""], "natrual_language": ["Likewise", "BLOCK_REG_PADDING", "(", "MODE", ",", "TYPE", ",", "...", ")", ".", "Return", "!", "BYTES_BIG_ENDIAN", "if", "the", "least", "significant", "byte", "of", "the", "register", "has", "useful", "data", ".", "Return", "the", "opposite", "if", "the", "most", "significant", "byte", "does", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_pad_reg_upward", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32573, "Length": 42} {"ground_truth": ["", "static", "const", "struct", "mips_cpu_info", "*", "mips_parse_cpu", "(", "const", "char", "*", "cpu_string", ")", "{", "const", "struct", "mips_cpu_info", "*", "p", ";", "const", "char", "*", "s", ";", "for", "(", "s", "=", "cpu_string", ";", "*", "s", "!=", "0", ";", "s", "++", ")", "if", "(", "ISUPPER", "(", "*", "s", ")", ")", "{", "warning", "(", "0", ",", "\"the cpu name must be lower case\"", ")", ";", "break", ";", "}", "if", "(", "strcasecmp", "(", "cpu_string", ",", "\"from-abi\"", ")", "==", "0", ")", "return", "mips_cpu_info_from_isa", "(", "ABI_NEEDS_32BIT_REGS", "?", "1", ":", "ABI_NEEDS_64BIT_REGS", "?", "3", ":", "(", "TARGET_64BIT", "?", "3", ":", "1", ")", ")", ";", "if", "(", "strcasecmp", "(", "cpu_string", ",", "\"default\"", ")", "==", "0", ")", "return", "0", ";", "for", "(", "p", "=", "mips_cpu_info_table", ";", "p", "->", "name", "!=", "0", ";", "p", "++", ")", "if", "(", "mips_matching_cpu_name_p", "(", "p", "->", "name", ",", "cpu_string", ")", ")", "return", "p", ";", "return", "0", ";", "}", ""], "natrual_language": ["Return", "the", "mips_cpu_info", "entry", "for", "the", "processor", "or", "ISA", "given", "by", "CPU_STRING", ".", "Return", "null", "if", "the", "string", "is", "n't", "recognized", ".", "A", "similar", "function", "exists", "in", "GAS", "."], "TS_V_token": ["mips", "0", "0", "\"the cpu name must be lower case\"", "\"from-abi\"", "0", "1", "3", "3", "1", "\"default\"", "0", "0", "0", "0"], "File": "mips3", "Func": "mips_parse_cpu", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32574, "Length": 135} {"ground_truth": ["", "enum", "reg_class", "mips_preferred_reload_class", "(", "rtx", "x", ",", "enum", "reg_class", "class", ")", "{", "if", "(", "mips_dangerous_for_la25_p", "(", "x", ")", "&&", "reg_class_subset_p", "(", "LEA_REGS", ",", "class", ")", ")", "return", "LEA_REGS", ";", "if", "(", "TARGET_HARD_FLOAT", "&&", "FLOAT_MODE_P", "(", "GET_MODE", "(", "x", ")", ")", "&&", "reg_class_subset_p", "(", "FP_REGS", ",", "class", ")", ")", "return", "FP_REGS", ";", "if", "(", "reg_class_subset_p", "(", "GR_REGS", ",", "class", ")", ")", "class", "=", "GR_REGS", ";", "if", "(", "TARGET_MIPS16", "&&", "reg_class_subset_p", "(", "M16_REGS", ",", "class", ")", ")", "class", "=", "M16_REGS", ";", "return", "class", ";", "}", ""], "natrual_language": ["Implement", "PREFERRED_RELOAD_CLASS", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_preferred_reload_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32575, "Length": 83} {"ground_truth": ["", "static", "rtx", "mips_prepare_builtin_arg", "(", "enum", "insn_code", "icode", ",", "unsigned", "int", "op", ",", "tree", "*", "arglist", ")", "{", "rtx", "value", ";", "enum", "machine_mode", "mode", ";", "value", "=", "expand_expr", "(", "TREE_VALUE", "(", "*", "arglist", ")", ",", "NULL_RTX", ",", "VOIDmode", ",", "0", ")", ";", "mode", "=", "insn_data", "[", "icode", "]", ".", "operand", "[", "op", "]", ".", "mode", ";", "if", "(", "!", "insn_data", "[", "icode", "]", ".", "operand", "[", "op", "]", ".", "predicate", "(", "value", ",", "mode", ")", ")", "{", "value", "=", "copy_to_mode_reg", "(", "mode", ",", "value", ")", ";", "if", "(", "!", "insn_data", "[", "icode", "]", ".", "operand", "[", "op", "]", ".", "predicate", "(", "value", ",", "mode", ")", ")", "{", "error", "(", "\"invalid argument to builtin function\"", ")", ";", "return", "const0_rtx", ";", "}", "}", "*", "arglist", "=", "TREE_CHAIN", "(", "*", "arglist", ")", ";", "return", "value", ";", "}", ""], "natrual_language": ["Take", "the", "head", "of", "argument", "list", "*", "ARGLIST", "and", "convert", "it", "into", "a", "form", "suitable", "for", "input", "operand", "OP", "of", "instruction", "ICODE", ".", "Return", "the", "value", "and", "point", "*", "ARGLIST", "at", "the", "next", "element", "of", "the", "list", "."], "TS_V_token": ["mips", "0", "\"invalid argument to builtin function\""], "File": "mips3", "Func": "mips_prepare_builtin_arg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32576, "Length": 129} {"ground_truth": ["", "static", "rtx", "mips_prepare_builtin_target", "(", "enum", "insn_code", "icode", ",", "unsigned", "int", "op", ",", "rtx", "target", ")", "{", "enum", "machine_mode", "mode", ";", "mode", "=", "insn_data", "[", "icode", "]", ".", "operand", "[", "op", "]", ".", "mode", ";", "if", "(", "target", "==", "0", "||", "!", "insn_data", "[", "icode", "]", ".", "operand", "[", "op", "]", ".", "predicate", "(", "target", ",", "mode", ")", ")", "target", "=", "gen_reg_rtx", "(", "mode", ")", ";", "return", "target", ";", "}", ""], "natrual_language": ["Return", "an", "rtx", "suitable", "for", "output", "operand", "OP", "of", "instruction", "ICODE", ".", "If", "TARGET", "is", "non-null", ",", "try", "to", "use", "it", "where", "possible", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_prepare_builtin_target", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32577, "Length": 69} {"ground_truth": ["", "static", "void", "mips_promote_ready", "(", "rtx", "*", "ready", ",", "int", "lower", ",", "int", "higher", ")", "{", "rtx", "new_head", ";", "int", "i", ";", "new_head", "=", "ready", "[", "lower", "]", ";", "for", "(", "i", "=", "lower", ";", "i", "<", "higher", ";", "i", "++", ")", "ready", "[", "i", "]", "=", "ready", "[", "i", "+", "1", "]", ";", "ready", "[", "i", "]", "=", "new_head", ";", "}", ""], "natrual_language": ["Remove", "the", "instruction", "at", "index", "LOWER", "from", "ready", "queue", "READY", "and", "reinsert", "it", "in", "front", "of", "the", "instruction", "at", "index", "HIGHER", ".", "LOWER", "must", "be", "<", "=", "HIGHER", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips_promote_ready", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32578, "Length": 61} {"ground_truth": ["", "int", "mips_register_move_cost", "(", "enum", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ",", "enum", "reg_class", "to", ",", "enum", "reg_class", "from", ")", "{", "if", "(", "from", "==", "M16_REGS", "&&", "GR_REG_CLASS_P", "(", "to", ")", ")", "return", "2", ";", "else", "if", "(", "from", "==", "M16_NA_REGS", "&&", "GR_REG_CLASS_P", "(", "to", ")", ")", "return", "2", ";", "else", "if", "(", "GR_REG_CLASS_P", "(", "from", ")", ")", "{", "if", "(", "to", "==", "M16_REGS", ")", "return", "2", ";", "else", "if", "(", "to", "==", "M16_NA_REGS", ")", "return", "2", ";", "else", "if", "(", "GR_REG_CLASS_P", "(", "to", ")", ")", "{", "if", "(", "TARGET_MIPS16", ")", "return", "4", ";", "else", "return", "2", ";", "}", "else", "if", "(", "to", "==", "FP_REGS", ")", "return", "4", ";", "else", "if", "(", "reg_class_subset_p", "(", "to", ",", "ACC_REGS", ")", ")", "{", "if", "(", "TARGET_MIPS16", ")", "return", "12", ";", "else", "return", "6", ";", "}", "else", "if", "(", "COP_REG_CLASS_P", "(", "to", ")", ")", "{", "return", "5", ";", "}", "}", "else", "if", "(", "from", "==", "FP_REGS", ")", "{", "if", "(", "GR_REG_CLASS_P", "(", "to", ")", ")", "return", "4", ";", "else", "if", "(", "to", "==", "FP_REGS", ")", "return", "2", ";", "else", "if", "(", "to", "==", "ST_REGS", ")", "return", "8", ";", "}", "else", "if", "(", "reg_class_subset_p", "(", "from", ",", "ACC_REGS", ")", ")", "{", "if", "(", "GR_REG_CLASS_P", "(", "to", ")", ")", "{", "if", "(", "TARGET_MIPS16", ")", "return", "12", ";", "else", "return", "6", ";", "}", "}", "else", "if", "(", "from", "==", "ST_REGS", "&&", "GR_REG_CLASS_P", "(", "to", ")", ")", "return", "4", ";", "else", "if", "(", "COP_REG_CLASS_P", "(", "from", ")", ")", "{", "return", "5", ";", "}", "return", "12", ";", "}", ""], "natrual_language": ["Implement", "TARGET_REGISTER_MOVE_COST", ".", "Return", "0", "for", "classes", "that", "are", "the", "maximum", "of", "the", "move", "costs", "for", "subclasses", ";", "regclass", "will", "work", "out", "the", "maximum", "for", "us", "."], "TS_V_token": ["mips", "2", "2", "2", "2", "4", "2", "4", "12", "6", "5", "4", "2", "8", "12", "6", "4", "5", "12"], "File": "mips3", "Func": "mips_register_move_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32579, "Length": 245} {"ground_truth": ["", "static", "bool", "mips_relational_operand_ok_p", "(", "enum", "rtx_code", "code", ",", "rtx", "cmp1", ")", "{", "switch", "(", "code", ")", "{", "case", "GT", ":", "case", "GTU", ":", "return", "reg_or_0_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "case", "GE", ":", "case", "GEU", ":", "return", "!", "TARGET_MIPS16", "&&", "cmp1", "==", "const1_rtx", ";", "case", "LT", ":", "case", "LTU", ":", "return", "arith_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "case", "LE", ":", "return", "sle_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "case", "LEU", ":", "return", "sleu_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "CMP1", "is", "a", "suitable", "second", "operand", "for", "relational", "operator", "CODE", ".", "See", "also", "the", "*", "sCC", "patterns", "in", "mips.md", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_relational_operand_ok_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32580, "Length": 89} {"ground_truth": ["", "static", "void", "mips_reorg", "(", "void", ")", "{", "if", "(", "TARGET_MIPS16", ")", "mips16_lay_out_constants", "(", ")", ";", "else", "if", "(", "TARGET_EXPLICIT_RELOCS", ")", "{", "if", "(", "mips_flag_delayed_branch", ")", "dbr_schedule", "(", "get_insns", "(", ")", ",", "dump_file", ")", ";", "mips_avoid_hazards", "(", ")", ";", "if", "(", "TUNE_MIPS4130", "&&", "TARGET_VR4130_ALIGN", ")", "vr4130_align_insns", "(", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_MACHINE_DEPENDENT_REORG", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_reorg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32581, "Length": 50} {"ground_truth": ["", "void", "mips_restore_gp", "(", "void", ")", "{", "rtx", "address", ",", "slot", ";", "gcc_assert", "(", "TARGET_ABICALLS", "&&", "TARGET_OLDABI", ")", ";", "address", "=", "mips_add_offset", "(", "pic_offset_table_rtx", ",", "frame_pointer_needed", "?", "hard_frame_pointer_rtx", ":", "stack_pointer_rtx", ",", "current_function_outgoing_args_size", ")", ";", "slot", "=", "gen_rtx_MEM", "(", "Pmode", ",", "address", ")", ";", "emit_move_insn", "(", "pic_offset_table_rtx", ",", "slot", ")", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["Restore", "$", "gp", "from", "its", "save", "slot", ".", "Valid", "only", "when", "using", "o32", "or", "o64", "abicalls", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_restore_gp", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32582, "Length": 62} {"ground_truth": ["", "static", "void", "mips_restore_reg", "(", "rtx", "reg", ",", "rtx", "mem", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "REGNO", "(", "reg", ")", "==", "GP_REG_FIRST", "+", "31", ")", "reg", "=", "gen_rtx_REG", "(", "GET_MODE", "(", "reg", ")", ",", "7", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "!", "M16_REG_P", "(", "REGNO", "(", "reg", ")", ")", ")", "{", "emit_move_insn", "(", "MIPS_EPILOGUE_TEMP", "(", "GET_MODE", "(", "reg", ")", ")", ",", "mem", ")", ";", "emit_move_insn", "(", "reg", ",", "MIPS_EPILOGUE_TEMP", "(", "GET_MODE", "(", "reg", ")", ")", ")", ";", "}", "else", "emit_move_insn", "(", "reg", ",", "mem", ")", ";", "}", ""], "natrual_language": ["Emit", "instructions", "to", "restore", "register", "REG", "from", "slot", "MEM", "."], "TS_V_token": ["mips", "31", "7"], "File": "mips3", "Func": "mips_restore_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32583, "Length": 86} {"ground_truth": ["", "rtx", "mips_return_addr", "(", "int", "count", ",", "rtx", "frame", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "count", "!=", "0", ")", "return", "const0_rtx", ";", "return", "get_hard_reg_initial_val", "(", "Pmode", ",", "GP_REG_FIRST", "+", "31", ")", ";", "}", ""], "natrual_language": ["Implement", "RETURN_ADDR_RTX", ".", "Note", ",", "we", "do", "not", "support", "moving", "back", "to", "a", "previous", "frame", "."], "TS_V_token": ["mips", "0", "31"], "File": "mips3", "Func": "mips_return_addr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32584, "Length": 31} {"ground_truth": ["", "static", "rtx", "mips_return_fpr_pair", "(", "enum", "machine_mode", "mode", ",", "enum", "machine_mode", "mode1", ",", "HOST_WIDE_INT", "offset1", ",", "enum", "machine_mode", "mode2", ",", "HOST_WIDE_INT", "offset2", ")", "{", "int", "inc", ";", "inc", "=", "(", "TARGET_NEWABI", "?", "2", ":", "FP_INC", ")", ";", "return", "gen_rtx_PARALLEL", "(", "mode", ",", "gen_rtvec", "(", "2", ",", "gen_rtx_EXPR_LIST", "(", "VOIDmode", ",", "gen_rtx_REG", "(", "mode1", ",", "FP_RETURN", ")", ",", "GEN_INT", "(", "offset1", ")", ")", ",", "gen_rtx_EXPR_LIST", "(", "VOIDmode", ",", "gen_rtx_REG", "(", "mode2", ",", "FP_RETURN", "+", "inc", ")", ",", "GEN_INT", "(", "offset2", ")", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "a", "composite", "value", "in", "a", "pair", "of", "floating-point", "registers", ".", "MODE1", "and", "OFFSET1", "are", "the", "mode", "and", "byte", "offset", "for", "the", "first", "value", ",", "likewise", "MODE2", "and", "OFFSET2", "for", "the", "second", ".", "MODE", "is", "the", "mode", "of", "the", "complete", "value", ".", "For", "n32", "&", "n64", ",", "$", "f0", "always", "holds", "the", "first", "value", "and", "$", "f2", "the", "second", ".", "Otherwise", "the", "values", "are", "packed", "together", "as", "closely", "as", "possible", "."], "TS_V_token": ["mips", "2", "2"], "File": "mips3", "Func": "mips_return_fpr_pair", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32585, "Length": 84} {"ground_truth": ["", "static", "bool", "mips_return_in_memory", "(", "tree", "type", ",", "tree", "fndecl", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "TARGET_OLDABI", ")", "return", "(", "TYPE_MODE", "(", "type", ")", "==", "BLKmode", ")", ";", "else", "return", "(", "(", "int_size_in_bytes", "(", "type", ")", ">", "(", "2", "*", "UNITS_PER_WORD", ")", ")", "||", "(", "int_size_in_bytes", "(", "type", ")", "==", "-", "1", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_RETURN_IN_MEMORY", ".", "Under", "the", "old", "(", "i.e.", ",", "32", "and", "O64", "ABIs", ")", "all", "BLKmode", "objects", "are", "returned", "in", "memory", ".", "Under", "the", "new", "(", "N32", "and", "64-bit", "MIPS", "ABIs", ")", "small", "structures", "are", "returned", "in", "a", "register", ".", "Objects", "with", "varying", "size", "must", "still", "be", "returned", "in", "memory", ",", "of", "course", "."], "TS_V_token": ["mips", "2", "1"], "File": "mips3", "Func": "mips_return_in_memory", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32586, "Length": 54} {"ground_truth": ["", "static", "bool", "mips_return_in_msb", "(", "tree", "valtype", ")", "{", "tree", "fields", "[", "2", "]", ";", "return", "(", "TARGET_NEWABI", "&&", "TARGET_BIG_ENDIAN", "&&", "AGGREGATE_TYPE_P", "(", "valtype", ")", "&&", "mips_fpr_return_fields", "(", "valtype", ",", "fields", ")", "==", "0", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_RETURN_IN_MSB", ".", "For", "n32", "&", "n64", ",", "we", "should", "return", "a", "value", "in", "the", "most", "significant", "part", "of", "$", "2/", "$", "3", "if", ":", "-", "the", "target", "is", "big-endian", ";", "-", "the", "value", "has", "a", "structure", "or", "union", "type", "(", "we", "generalize", "this", "to", "cover", "aggregates", "from", "other", "languages", "too", ")", ";", "and", "-", "the", "structure", "is", "not", "returned", "in", "floating-point", "registers", "."], "TS_V_token": ["mips", "2", "0"], "File": "mips3", "Func": "mips_return_in_msb", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32587, "Length": 36} {"ground_truth": ["", "rtx", "mips_rewrite_small_data", "(", "rtx", "op", ")", "{", "op", "=", "copy_insn", "(", "op", ")", ";", "for_each_rtx", "(", "&", "op", ",", "mips_rewrite_small_data_1", ",", "0", ")", ";", "return", "op", ";", "}", ""], "natrual_language": ["If", "possible", ",", "rewrite", "OP", "so", "that", "it", "refers", "to", "small", "data", "using", "explicit", "relocations", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_rewrite_small_data", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32588, "Length": 28} {"ground_truth": ["", "static", "int", "mips_rewrite_small_data_1", "(", "rtx", "*", "loc", ",", "void", "*", "data", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "mips_rewrite_small_data_p", "(", "*", "loc", ")", ")", "*", "loc", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "pic_offset_table_rtx", ",", "*", "loc", ")", ";", "if", "(", "GET_CODE", "(", "*", "loc", ")", "==", "LO_SUM", ")", "return", "-", "1", ";", "return", "0", ";", "}", ""], "natrual_language": ["A", "for_each_rtx", "callback", ",", "used", "by", "mips_rewrite_small_data", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips3", "Func": "mips_rewrite_small_data_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32589, "Length": 53} {"ground_truth": ["", "static", "bool", "mips_rewrite_small_data_p", "(", "rtx", "x", ")", "{", "enum", "mips_symbol_type", "symbol_type", ";", "return", "(", "TARGET_EXPLICIT_RELOCS", "&&", "mips_symbolic_constant_p", "(", "x", ",", "&", "symbol_type", ")", "&&", "symbol_type", "==", "SYMBOL_SMALL_DATA", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "small", "data", "address", "that", "can", "be", "rewritten", "as", "a", "LO_SUM", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_rewrite_small_data_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32590, "Length": 30} {"ground_truth": ["", "static", "void", "mips_save_reg", "(", "rtx", "reg", ",", "rtx", "mem", ")", "{", "if", "(", "GET_MODE", "(", "reg", ")", "==", "DFmode", "&&", "!", "TARGET_FLOAT64", ")", "{", "rtx", "x1", ",", "x2", ";", "if", "(", "mips_split_64bit_move_p", "(", "mem", ",", "reg", ")", ")", "mips_split_64bit_move", "(", "mem", ",", "reg", ")", ";", "else", "emit_move_insn", "(", "mem", ",", "reg", ")", ";", "x1", "=", "mips_frame_set", "(", "mips_subword", "(", "mem", ",", "0", ")", ",", "mips_subword", "(", "reg", ",", "0", ")", ")", ";", "x2", "=", "mips_frame_set", "(", "mips_subword", "(", "mem", ",", "1", ")", ",", "mips_subword", "(", "reg", ",", "1", ")", ")", ";", "mips_set_frame_expr", "(", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec", "(", "2", ",", "x1", ",", "x2", ")", ")", ")", ";", "}", "else", "{", "if", "(", "TARGET_MIPS16", "&&", "REGNO", "(", "reg", ")", "!=", "GP_REG_FIRST", "+", "31", "&&", "!", "M16_REG_P", "(", "REGNO", "(", "reg", ")", ")", ")", "{", "emit_move_insn", "(", "MIPS_PROLOGUE_TEMP", "(", "GET_MODE", "(", "reg", ")", ")", ",", "reg", ")", ";", "emit_move_insn", "(", "mem", ",", "MIPS_PROLOGUE_TEMP", "(", "GET_MODE", "(", "reg", ")", ")", ")", ";", "}", "else", "emit_move_insn", "(", "mem", ",", "reg", ")", ";", "mips_set_frame_expr", "(", "mips_frame_set", "(", "mem", ",", "reg", ")", ")", ";", "}", "}", ""], "natrual_language": ["Save", "register", "REG", "to", "MEM", ".", "Make", "the", "instruction", "frame-related", "."], "TS_V_token": ["mips", "0", "0", "1", "1", "2", "31"], "File": "mips3", "Func": "mips_save_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32591, "Length": 181} {"ground_truth": ["", "static", "bool", "mips_save_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "regno", "==", "GLOBAL_POINTER_REGNUM", ")", "return", "(", "TARGET_ABICALLS", "&&", "TARGET_NEWABI", "&&", "cfun", "->", "machine", "->", "global_pointer", "==", "regno", ")", ";", "if", "(", "regs_ever_live", "[", "regno", "]", "&&", "!", "call_used_regs", "[", "regno", "]", ")", "return", "true", ";", "if", "(", "regno", "==", "HARD_FRAME_POINTER_REGNUM", "&&", "frame_pointer_needed", ")", "return", "true", ";", "if", "(", "regno", "==", "GP_REG_FIRST", "+", "31", "&&", "regs_ever_live", "[", "regno", "]", ")", "return", "true", ";", "if", "(", "TARGET_MIPS16", ")", "{", "tree", "return_type", ";", "return_type", "=", "DECL_RESULT", "(", "current_function_decl", ")", ";", "if", "(", "regno", "==", "GP_REG_FIRST", "+", "18", "&&", "regs_ever_live", "[", "regno", "]", ")", "return", "true", ";", "if", "(", "regno", "==", "GP_REG_FIRST", "+", "31", "&&", "mips16_hard_float", "&&", "!", "aggregate_value_p", "(", "return_type", ",", "current_function_decl", ")", "&&", "GET_MODE_CLASS", "(", "DECL_MODE", "(", "return_type", ")", ")", "==", "MODE_FLOAT", "&&", "GET_MODE_SIZE", "(", "DECL_MODE", "(", "return_type", ")", ")", "<=", "UNITS_PER_FPVALUE", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "must", "save", "REGNO", "."], "TS_V_token": ["mips", "31", "18", "31"], "File": "mips3", "Func": "mips_save_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32592, "Length": 150} {"ground_truth": ["", "static", "void", "mips_save_restore_reg", "(", "enum", "machine_mode", "mode", ",", "int", "regno", ",", "HOST_WIDE_INT", "offset", ",", "mips_save_restore_fn", "fn", ")", "{", "rtx", "mem", ";", "mem", "=", "gen_rtx_MEM", "(", "mode", ",", "plus_constant", "(", "stack_pointer_rtx", ",", "offset", ")", ")", ";", "fn", "(", "gen_rtx_REG", "(", "mode", ",", "regno", ")", ",", "mem", ")", ";", "}", ""], "natrual_language": ["Use", "FN", "to", "save", "or", "restore", "register", "REGNO", ".", "MODE", "is", "the", "register", "'s", "mode", "and", "OFFSET", "is", "the", "offset", "of", "its", "save", "slot", "from", "the", "current", "stack", "pointer", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_save_restore_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32593, "Length": 48} {"ground_truth": ["", "enum", "reg_class", "mips_secondary_reload_class", "(", "enum", "reg_class", "class", ",", "enum", "machine_mode", "mode", ",", "rtx", "x", ",", "int", "in_p", ")", "{", "enum", "reg_class", "gr_regs", "=", "TARGET_MIPS16", "?", "M16_REGS", ":", "GR_REGS", ";", "int", "regno", "=", "-", "1", ";", "int", "gp_reg_p", ";", "if", "(", "REG_P", "(", "x", ")", "||", "GET_CODE", "(", "x", ")", "==", "SUBREG", ")", "regno", "=", "true_regnum", "(", "x", ")", ";", "gp_reg_p", "=", "TARGET_MIPS16", "?", "M16_REG_P", "(", "regno", ")", ":", "GP_REG_P", "(", "regno", ")", ";", "if", "(", "mips_dangerous_for_la25_p", "(", "x", ")", ")", "{", "gr_regs", "=", "LEA_REGS", ";", "if", "(", "TEST_HARD_REG_BIT", "(", "reg_class_contents", "[", "(", "int", ")", "class", "]", ",", "25", ")", ")", "return", "gr_regs", ";", "}", "if", "(", "reg_class_subset_p", "(", "class", ",", "ACC_REGS", ")", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "in_p", ")", "{", "return", "M16_REGS", ";", "}", "return", "gp_reg_p", "?", "NO_REGS", ":", "gr_regs", ";", "}", "if", "(", "ACC_REG_P", "(", "regno", ")", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "!", "in_p", ")", "{", "return", "M16_REGS", ";", "}", "return", "class", "==", "gr_regs", "?", "NO_REGS", ":", "gr_regs", ";", "}", "if", "(", "class", "==", "ST_REGS", ")", "{", "if", "(", "in_p", ")", "return", "FP_REGS", ";", "return", "gp_reg_p", "?", "NO_REGS", ":", "gr_regs", ";", "}", "if", "(", "ST_REG_P", "(", "regno", ")", ")", "{", "if", "(", "!", "in_p", ")", "return", "FP_REGS", ";", "return", "class", "==", "gr_regs", "?", "NO_REGS", ":", "gr_regs", ";", "}", "if", "(", "class", "==", "FP_REGS", ")", "{", "if", "(", "MEM_P", "(", "x", ")", ")", "{", "return", "NO_REGS", ";", "}", "else", "if", "(", "CONSTANT_P", "(", "x", ")", "&&", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "{", "return", "NO_REGS", ";", "}", "else", "if", "(", "gp_reg_p", "||", "x", "==", "CONST0_RTX", "(", "mode", ")", ")", "{", "return", "NO_REGS", ";", "}", "else", "if", "(", "FP_REG_P", "(", "regno", ")", ")", "{", "return", "NO_REGS", ";", "}", "else", "{", "return", "gr_regs", ";", "}", "}", ""], "natrual_language": ["This", "function", "returns", "the", "register", "class", "required", "for", "a", "secondary", "register", "when", "copying", "between", "one", "of", "the", "registers", "in", "CLASS", ",", "and", "X", ",", "using", "MODE", ".", "If", "IN_P", "is", "nonzero", ",", "the", "copy", "is", "going", "from", "X", "to", "the", "register", ",", "otherwise", "the", "register", "is", "the", "source", ".", "A", "return", "value", "of", "NO_REGS", "means", "that", "no", "secondary", "register", "is", "required", "."], "TS_V_token": ["mips", "1", "25"], "File": "mips3", "Func": "mips_secondary_reload_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32594, "Length": 287} {"ground_truth": ["", "static", "void", "mips_select_rtx_section", "(", "enum", "machine_mode", "mode", ",", "rtx", "x", ",", "unsigned", "HOST_WIDE_INT", "align", ")", "{", "if", "(", "TARGET_MIPS16", ")", "{", "function_section", "(", "current_function_decl", ")", ";", "}", "else", "if", "(", "TARGET_EMBEDDED_DATA", ")", "{", "mergeable_constant_section", "(", "mode", ",", "align", ",", "0", ")", ";", "}", "else", "{", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "<=", "(", "unsigned", ")", "mips_section_threshold", "&&", "mips_section_threshold", ">", "0", ")", "named_section", "(", "0", ",", "\".sdata\"", ",", "0", ")", ";", "else", "if", "(", "flag_pic", "&&", "symbolic_expression_p", "(", "x", ")", ")", "named_section", "(", "0", ",", "\".data.rel.ro\"", ",", "3", ")", ";", "else", "mergeable_constant_section", "(", "mode", ",", "align", ",", "0", ")", ";", "}", "}", ""], "natrual_language": ["Choose", "the", "section", "to", "use", "for", "the", "constant", "rtx", "expression", "X", "that", "has", "mode", "MODE", "."], "TS_V_token": ["mips", "0", "0", "0", "\".sdata\"", "0", "0", "\".data.rel.ro\"", "3", "0"], "File": "mips3", "Func": "mips_select_rtx_section", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32595, "Length": 101} {"ground_truth": ["", "static", "void", "mips_setup_incoming_varargs", "(", "CUMULATIVE_ARGS", "*", "cum", ",", "enum", "machine_mode", "mode", ",", "tree", "type", ",", "int", "*", "pretend_size", "ATTRIBUTE_UNUSED", ",", "int", "no_rtl", ")", "{", "CUMULATIVE_ARGS", "local_cum", ";", "int", "gp_saved", ",", "fp_saved", ";", "local_cum", "=", "*", "cum", ";", "FUNCTION_ARG_ADVANCE", "(", "local_cum", ",", "mode", ",", "type", ",", "1", ")", ";", "gp_saved", "=", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_gprs", ";", "fp_saved", "=", "(", "EABI_FLOAT_VARARGS_P", "?", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_fprs", ":", "0", ")", ";", "if", "(", "!", "no_rtl", ")", "{", "if", "(", "gp_saved", ">", "0", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "virtual_incoming_args_rtx", ",", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "-", "gp_saved", "*", "UNITS_PER_WORD", ")", ";", "mem", "=", "gen_rtx_MEM", "(", "BLKmode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "move_block_from_reg", "(", "local_cum", ".", "num_gprs", "+", "GP_ARG_FIRST", ",", "mem", ",", "gp_saved", ")", ";", "}", "if", "(", "fp_saved", ">", "0", ")", "{", "enum", "machine_mode", "mode", ";", "int", "off", ",", "i", ";", "off", "=", "-", "gp_saved", "*", "UNITS_PER_WORD", ";", "off", "&=", "~", "(", "UNITS_PER_FPVALUE", "-", "1", ")", ";", "off", "-=", "fp_saved", "*", "UNITS_PER_FPREG", ";", "mode", "=", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ";", "for", "(", "i", "=", "local_cum", ".", "num_fprs", ";", "i", "<", "MAX_ARGS_IN_REGISTERS", ";", "i", "+=", "FP_INC", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "virtual_incoming_args_rtx", ",", "off", ")", ";", "mem", "=", "gen_rtx_MEM", "(", "mode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "emit_move_insn", "(", "mem", ",", "gen_rtx_REG", "(", "mode", ",", "FP_ARG_FIRST", "+", "i", ")", ")", ";", "off", "+=", "UNITS_PER_HWFPVALUE", ";", "}", "}", "}", "if", "(", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "==", "0", ")", "cfun", "->", "machine", "->", "varargs_size", "=", "(", "gp_saved", "*", "UNITS_PER_WORD", "+", "fp_saved", "*", "UNITS_PER_FPREG", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SETUP_INCOMING_VARARGS", "."], "TS_V_token": ["mips", "1", "0", "0", "0", "1", "0"], "File": "mips3", "Func": "mips_setup_incoming_varargs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32596, "Length": 282} {"ground_truth": ["", "static", "void", "mips_set_architecture", "(", "const", "struct", "mips_cpu_info", "*", "info", ")", "{", "if", "(", "info", "!=", "0", ")", "{", "mips_arch_info", "=", "info", ";", "mips_arch", "=", "info", "->", "cpu", ";", "mips_isa", "=", "info", "->", "isa", ";", "}", "}", ""], "natrual_language": ["Set", "up", "globals", "to", "generate", "code", "for", "the", "ISA", "or", "processor", "described", "by", "INFO", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_set_architecture", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32597, "Length": 36} {"ground_truth": ["", "static", "void", "mips_set_frame_expr", "(", "rtx", "frame_pattern", ")", "{", "rtx", "insn", ";", "insn", "=", "get_last_insn", "(", ")", ";", "RTX_FRAME_RELATED_P", "(", "insn", ")", "=", "1", ";", "REG_NOTES", "(", "insn", ")", "=", "alloc_EXPR_LIST", "(", "REG_FRAME_RELATED_EXPR", ",", "frame_pattern", ",", "REG_NOTES", "(", "insn", ")", ")", ";", "}", ""], "natrual_language": ["Make", "the", "last", "instruction", "frame", "related", "and", "note", "that", "it", "performs", "the", "operation", "described", "by", "FRAME_PATTERN", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips_set_frame_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32598, "Length": 42} {"ground_truth": ["", "void", "mips_set_return_address", "(", "rtx", "address", ",", "rtx", "scratch", ")", "{", "rtx", "slot_address", ";", "compute_frame_size", "(", "get_frame_size", "(", ")", ")", ";", "gcc_assert", "(", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", ">>", "31", ")", "&", "1", ")", ";", "slot_address", "=", "mips_add_offset", "(", "scratch", ",", "stack_pointer_rtx", ",", "cfun", "->", "machine", "->", "frame", ".", "gp_sp_offset", ")", ";", "emit_move_insn", "(", "gen_rtx_MEM", "(", "GET_MODE", "(", "address", ")", ",", "slot_address", ")", ",", "address", ")", ";", "}", ""], "natrual_language": ["Emit", "code", "to", "change", "the", "current", "function", "'s", "return", "address", "to", "ADDRESS", ".", "SCRATCH", "is", "available", "as", "a", "scratch", "register", ",", "if", "needed", ".", "ADDRESS", "and", "SCRATCH", "are", "both", "word-mode", "GPRs", "."], "TS_V_token": ["mips", "31", "1"], "File": "mips3", "Func": "mips_set_return_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32599, "Length": 70} {"ground_truth": ["", "static", "void", "mips_sim_finish_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx", "insn", ")", "{", "if", "(", "JUMP_P", "(", "insn", ")", ")", "mips_sim_issue_nop", "(", "state", ")", ";", "switch", "(", "GET_CODE", "(", "SEQ_BEGIN", "(", "insn", ")", ")", ")", "{", "case", "CODE_LABEL", ":", "case", "CALL_INSN", ":", "mips_sim_reset", "(", "state", ")", ";", "break", ";", "case", "JUMP_INSN", ":", "if", "(", "INSN_ANNULLED_BRANCH_P", "(", "SEQ_BEGIN", "(", "insn", ")", ")", ")", "mips_sim_reset", "(", "state", ")", ";", "break", ";", "default", ":", "break", ";", "}", "}", ""], "natrual_language": ["Update", "simulation", "state", "STATE", "so", "that", "it", "'s", "ready", "to", "accept", "the", "instruction", "after", "INSN", ".", "INSN", "should", "be", "part", "of", "the", "main", "rtl", "chain", ",", "not", "a", "member", "of", "a", "SEQUENCE", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_sim_finish_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32600, "Length": 75} {"ground_truth": ["", "static", "void", "mips_sim_init", "(", "struct", "mips_sim", "*", "state", ",", "state_t", "dfa_state", ")", "{", "state", "->", "issue_rate", "=", "mips_issue_rate", "(", ")", ";", "state", "->", "dfa_state", "=", "dfa_state", ";", "mips_sim_reset", "(", "state", ")", ";", "}", ""], "natrual_language": ["Initialize", "STATE", "before", "its", "first", "use", ".", "DFA_STATE", "points", "to", "an", "allocated", "but", "uninitialized", "DFA", "state", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_sim_init", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32601, "Length": 33} {"ground_truth": ["", "static", "void", "mips_sim_issue_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx", "insn", ")", "{", "state_transition", "(", "state", "->", "dfa_state", ",", "insn", ")", ";", "state", "->", "insns_left", "--", ";", "mips_sim_insn", "=", "insn", ";", "note_stores", "(", "PATTERN", "(", "insn", ")", ",", "mips_sim_record_set", ",", "state", ")", ";", "}", ""], "natrual_language": ["Issue", "instruction", "INSN", "in", "scheduler", "state", "STATE", ".", "Assume", "that", "INSN", "can", "issue", "immediately", "(", "i.e.", ",", "that", "mips_sim_wait_insn", "has", "already", "been", "called", ")", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_sim_issue_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32602, "Length": 44} {"ground_truth": ["", "static", "void", "mips_sim_next_cycle", "(", "struct", "mips_sim", "*", "state", ")", "{", "state", "->", "time", "++", ";", "state", "->", "insns_left", "=", "state", "->", "issue_rate", ";", "state_transition", "(", "state", "->", "dfa_state", ",", "0", ")", ";", "}", ""], "natrual_language": ["Advance", "STATE", "by", "one", "clock", "cycle", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_sim_next_cycle", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32603, "Length": 33} {"ground_truth": ["", "static", "void", "mips_sim_record_set", "(", "rtx", "x", ",", "rtx", "pat", "ATTRIBUTE_UNUSED", ",", "void", "*", "data", ")", "{", "struct", "mips_sim", "*", "state", ";", "unsigned", "int", "i", ";", "state", "=", "data", ";", "if", "(", "REG_P", "(", "x", ")", ")", "for", "(", "i", "=", "0", ";", "i", "<", "HARD_REGNO_NREGS", "(", "REGNO", "(", "x", ")", ",", "GET_MODE", "(", "x", ")", ")", ";", "i", "++", ")", "{", "state", "->", "last_set", "[", "REGNO", "(", "x", ")", "+", "i", "]", ".", "insn", "=", "mips_sim_insn", ";", "state", "->", "last_set", "[", "REGNO", "(", "x", ")", "+", "i", "]", ".", "time", "=", "state", "->", "time", ";", "}", "}", ""], "natrual_language": ["mips_sim_insn", "has", "just", "set", "X.", "Update", "the", "LAST_SET", "array", "in", "simulation", "state", "DATA", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_sim_record_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32604, "Length": 97} {"ground_truth": ["", "static", "void", "mips_sim_reset", "(", "struct", "mips_sim", "*", "state", ")", "{", "state", "->", "time", "=", "0", ";", "state", "->", "insns_left", "=", "state", "->", "issue_rate", ";", "memset", "(", "&", "state", "->", "last_set", ",", "0", ",", "sizeof", "(", "state", "->", "last_set", ")", ")", ";", "state_reset", "(", "state", "->", "dfa_state", ")", ";", "}", ""], "natrual_language": ["Reset", "STATE", "to", "the", "initial", "simulation", "state", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_sim_reset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32605, "Length": 49} {"ground_truth": ["", "static", "void", "mips_sim_wait_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx", "insn", ")", "{", "mips_sim_wait_regs", "(", "state", ",", "insn", ")", ";", "mips_sim_wait_units", "(", "state", ",", "insn", ")", ";", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "INSN", "is", "ready", "to", "issue", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_sim_wait_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32606, "Length": 28} {"ground_truth": ["", "static", "void", "mips_sim_wait_reg", "(", "struct", "mips_sim", "*", "state", ",", "rtx", "insn", ",", "rtx", "reg", ")", "{", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "HARD_REGNO_NREGS", "(", "REGNO", "(", "reg", ")", ",", "GET_MODE", "(", "reg", ")", ")", ";", "i", "++", ")", "if", "(", "state", "->", "last_set", "[", "REGNO", "(", "reg", ")", "+", "i", "]", ".", "insn", "!=", "0", ")", "{", "unsigned", "int", "t", ";", "t", "=", "state", "->", "last_set", "[", "REGNO", "(", "reg", ")", "+", "i", "]", ".", "time", ";", "t", "+=", "insn_latency", "(", "state", "->", "last_set", "[", "REGNO", "(", "reg", ")", "+", "i", "]", ".", "insn", ",", "insn", ")", ";", "while", "(", "state", "->", "time", "<", "t", ")", "mips_sim_next_cycle", "(", "state", ")", ";", "}", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "instruction", "INSN", "can", "read", "register", "REG", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_sim_wait_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32607, "Length": 119} {"ground_truth": ["", "static", "void", "mips_sim_wait_regs", "(", "struct", "mips_sim", "*", "state", ",", "rtx", "insn", ")", "{", "mips_sim_insn", "=", "insn", ";", "note_uses", "(", "&", "PATTERN", "(", "insn", ")", ",", "mips_sim_wait_regs_1", ",", "state", ")", ";", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "all", "of", "INSN", "'s", "register", "dependencies", "are", "satisfied", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_sim_wait_regs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32608, "Length": 31} {"ground_truth": ["", "static", "void", "mips_sim_wait_regs_1", "(", "rtx", "*", "x", ",", "void", "*", "data", ")", "{", "for_each_rtx", "(", "x", ",", "mips_sim_wait_regs_2", ",", "data", ")", ";", "}", ""], "natrual_language": ["Call", "mips_sim_wait_regs_2", "(", "R", ",", "DATA", ")", "for", "each", "register", "R", "mentioned", "in", "*", "X", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_sim_wait_regs_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32609, "Length": 23} {"ground_truth": ["", "static", "int", "mips_sim_wait_regs_2", "(", "rtx", "*", "x", ",", "void", "*", "data", ")", "{", "if", "(", "REG_P", "(", "*", "x", ")", ")", "mips_sim_wait_reg", "(", "data", ",", "mips_sim_insn", ",", "*", "x", ")", ";", "return", "0", ";", "}", ""], "natrual_language": ["A", "for_each_rtx", "callback", ".", "If", "*", "X", "is", "a", "register", ",", "advance", "simulation", "state", "DATA", "until", "mips_sim_insn", "can", "read", "the", "register", "'s", "value", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_sim_wait_regs_2", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32610, "Length": 35} {"ground_truth": ["", "static", "void", "mips_sim_wait_units", "(", "struct", "mips_sim", "*", "state", ",", "rtx", "insn", ")", "{", "state_t", "tmp_state", ";", "tmp_state", "=", "alloca", "(", "state_size", "(", ")", ")", ";", "while", "(", "state", "->", "insns_left", "==", "0", "||", "(", "memcpy", "(", "tmp_state", ",", "state", "->", "dfa_state", ",", "state_size", "(", ")", ")", ",", "state_transition", "(", "tmp_state", ",", "insn", ")", ">=", "0", ")", ")", "mips_sim_next_cycle", "(", "state", ")", ";", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "the", "units", "required", "by", "instruction", "INSN", "are", "available", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_sim_wait_units", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32611, "Length": 63} {"ground_truth": ["", "static", "int", "mips_small_data_pattern_1", "(", "rtx", "*", "loc", ",", "void", "*", "data", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "GET_CODE", "(", "*", "loc", ")", "==", "LO_SUM", ")", "return", "-", "1", ";", "return", "mips_rewrite_small_data_p", "(", "*", "loc", ")", ";", "}", ""], "natrual_language": ["A", "for_each_rtx", "callback", "for", "mips_small_data_pattern_p", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips_small_data_pattern_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32612, "Length": 36} {"ground_truth": ["", "bool", "mips_small_data_pattern_p", "(", "rtx", "op", ")", "{", "return", "for_each_rtx", "(", "&", "op", ",", "mips_small_data_pattern_1", ",", "0", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "refers", "to", "small", "data", "symbols", "directly", ",", "not", "through", "a", "LO_SUM", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "mips_small_data_pattern_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32613, "Length": 19} {"ground_truth": ["", "void", "mips_split_64bit_move", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", ")", "{", "emit_insn", "(", "gen_load_df_low", "(", "copy_rtx", "(", "dest", ")", ",", "mips_subword", "(", "src", ",", "0", ")", ")", ")", ";", "emit_insn", "(", "gen_load_df_high", "(", "dest", ",", "mips_subword", "(", "src", ",", "1", ")", ",", "copy_rtx", "(", "dest", ")", ")", ")", ";", "}", "else", "if", "(", "FP_REG_RTX_P", "(", "src", ")", ")", "{", "emit_move_insn", "(", "mips_subword", "(", "dest", ",", "0", ")", ",", "mips_subword", "(", "src", ",", "0", ")", ")", ";", "emit_insn", "(", "gen_store_df_high", "(", "mips_subword", "(", "dest", ",", "1", ")", ",", "src", ")", ")", ";", "}", "else", "{", "rtx", "low_dest", ";", "low_dest", "=", "mips_subword", "(", "dest", ",", "0", ")", ";", "if", "(", "REG_P", "(", "low_dest", ")", "&&", "reg_overlap_mentioned_p", "(", "low_dest", ",", "src", ")", ")", "{", "emit_move_insn", "(", "mips_subword", "(", "dest", ",", "1", ")", ",", "mips_subword", "(", "src", ",", "1", ")", ")", ";", "emit_move_insn", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "0", ")", ")", ";", "}", "else", "{", "emit_move_insn", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "0", ")", ")", ";", "emit_move_insn", "(", "mips_subword", "(", "dest", ",", "1", ")", ",", "mips_subword", "(", "src", ",", "1", ")", ")", ";", "}", "}", "}", ""], "natrual_language": ["Split", "a", "64-bit", "move", "from", "SRC", "to", "DEST", "assuming", "that", "mips_split_64bit_move_p", "holds", ".", "Moves", "into", "and", "out", "of", "FPRs", "cause", "some", "difficulty", "here", ".", "Such", "moves", "will", "always", "be", "DFmode", ",", "since", "paired", "FPRs", "are", "not", "allowed", "to", "store", "DImode", "values", ".", "The", "most", "natural", "representation", "would", "be", "two", "separate", "32-bit", "moves", ",", "such", "as", ":", "(", "set", "(", "reg", ":", "SI", "$", "f0", ")", "(", "mem", ":", "SI", "...", ")", ")", "(", "set", "(", "reg", ":", "SI", "$", "f1", ")", "(", "mem", ":", "SI", "...", ")", ")", "However", ",", "the", "second", "insn", "is", "invalid", "because", "odd-numbered", "FPRs", "are", "not", "allowed", "to", "store", "independent", "values", ".", "Use", "the", "patterns", "load_df_low", ",", "load_df_high", "and", "store_df_high", "instead", "."], "TS_V_token": ["mips", "0", "1", "0", "0", "1", "0", "1", "1", "0", "0", "1", "1"], "File": "mips3", "Func": "mips_split_64bit_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32614, "Length": 192} {"ground_truth": ["", "bool", "mips_split_64bit_move_p", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "TARGET_64BIT", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "src", ")", "&&", "FP_REG_RTX_P", "(", "dest", ")", ")", "return", "false", ";", "if", "(", "mips_isa", ">", "1", ")", "{", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "&&", "MEM_P", "(", "src", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "src", ")", "&&", "MEM_P", "(", "dest", ")", ")", "return", "false", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "64-bit", "move", "from", "SRC", "to", "DEST", "should", "be", "split", "into", "two", "."], "TS_V_token": ["mips", "1"], "File": "mips3", "Func": "mips_split_64bit_move_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32615, "Length": 74} {"ground_truth": ["", "static", "bool", "mips_strict_matching_cpu_name_p", "(", "const", "char", "*", "canonical", ",", "const", "char", "*", "given", ")", "{", "while", "(", "*", "given", "!=", "0", "&&", "TOLOWER", "(", "*", "given", ")", "==", "TOLOWER", "(", "*", "canonical", ")", ")", "given", "++", ",", "canonical", "++", ";", "return", "(", "(", "*", "given", "==", "0", "&&", "*", "canonical", "==", "0", ")", "||", "(", "strcmp", "(", "canonical", ",", "\"000\"", ")", "==", "0", "&&", "strcasecmp", "(", "given", ",", "\"k\"", ")", "==", "0", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "GIVEN", "is", "the", "same", "as", "CANONICAL", ",", "or", "if", "it", "is", "CANONICAL", "with", "a", "final", "``", "000", "''", "replaced", "by", "``", "k", "''", ".", "Ignore", "case", ".", "Note", ":", "this", "function", "is", "shared", "between", "GCC", "and", "GAS", "."], "TS_V_token": ["mips", "0", "0", "0", "\"000\"", "0", "\"k\"", "0"], "File": "mips3", "Func": "mips_strict_matching_cpu_name_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32616, "Length": 76} {"ground_truth": ["", "rtx", "mips_subword", "(", "rtx", "op", ",", "int", "high_p", ")", "{", "unsigned", "int", "byte", ";", "enum", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "op", ")", ";", "if", "(", "mode", "==", "VOIDmode", ")", "mode", "=", "DImode", ";", "if", "(", "TARGET_BIG_ENDIAN", "?", "!", "high_p", ":", "high_p", ")", "byte", "=", "UNITS_PER_WORD", ";", "else", "byte", "=", "0", ";", "if", "(", "REG_P", "(", "op", ")", ")", "{", "if", "(", "FP_REG_P", "(", "REGNO", "(", "op", ")", ")", ")", "return", "gen_rtx_REG", "(", "word_mode", ",", "high_p", "?", "REGNO", "(", "op", ")", "+", "1", ":", "REGNO", "(", "op", ")", ")", ";", "if", "(", "ACC_HI_REG_P", "(", "REGNO", "(", "op", ")", ")", ")", "return", "gen_rtx_REG", "(", "word_mode", ",", "high_p", "?", "REGNO", "(", "op", ")", ":", "REGNO", "(", "op", ")", "+", "1", ")", ";", "}", "if", "(", "MEM_P", "(", "op", ")", ")", "return", "mips_rewrite_small_data", "(", "adjust_address", "(", "op", ",", "word_mode", ",", "byte", ")", ")", ";", "return", "simplify_gen_subreg", "(", "word_mode", ",", "op", ",", "mode", ",", "byte", ")", ";", "}", ""], "natrual_language": ["Return", "one", "word", "of", "double-word", "value", "OP", ",", "taking", "into", "account", "the", "fixed", "endianness", "of", "certain", "registers", ".", "HIGH_P", "is", "true", "to", "select", "the", "high", "part", ",", "false", "to", "select", "the", "low", "part", "."], "TS_V_token": ["mips", "0", "1", "1"], "File": "mips3", "Func": "mips_subword", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32617, "Length": 155} {"ground_truth": ["", "bool", "mips_use_ins_ext_p", "(", "rtx", "op", ",", "rtx", "size", ",", "rtx", "position", ")", "{", "HOST_WIDE_INT", "len", ",", "pos", ";", "if", "(", "!", "ISA_HAS_EXT_INS", "||", "!", "register_operand", "(", "op", ",", "VOIDmode", ")", "||", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", ">", "BITS_PER_WORD", ")", "return", "false", ";", "len", "=", "INTVAL", "(", "size", ")", ";", "pos", "=", "INTVAL", "(", "position", ")", ";", "if", "(", "len", "<=", "0", "||", "len", ">=", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "||", "pos", "<", "0", "||", "pos", "+", "len", ">", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "(", "zero_extract", "OP", "SIZE", "POSITION", ")", "can", "be", "used", "as", "the", "source", "of", "an", "``", "ext", "''", "instruction", "or", "the", "destination", "of", "an", "``", "ins", "''", "instruction", ".", "OP", "must", "be", "a", "register", "operand", "and", "the", "following", "conditions", "must", "hold", ":", "0", "<", "=", "POSITION", "<", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "0", "<", "SIZE", "<", "=", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "0", "<", "POSITION", "+", "SIZE", "<", "=", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "Also", "reject", "lengths", "equal", "to", "a", "word", "as", "they", "are", "better", "handled", "by", "the", "move", "patterns", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "mips_use_ins_ext_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32618, "Length": 97} {"ground_truth": ["", "static", "bool", "mips_valid_pointer_mode", "(", "enum", "machine_mode", "mode", ")", "{", "return", "(", "mode", "==", "SImode", "||", "(", "TARGET_64BIT", "&&", "mode", "==", "DImode", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VALID_POINTER_MODE", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_valid_pointer_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32619, "Length": 25} {"ground_truth": ["", "void", "mips_va_start", "(", "tree", "valist", ",", "rtx", "nextarg", ")", "{", "if", "(", "EABI_FLOAT_VARARGS_P", ")", "{", "const", "CUMULATIVE_ARGS", "*", "cum", ";", "tree", "f_ovfl", ",", "f_gtop", ",", "f_ftop", ",", "f_goff", ",", "f_foff", ";", "tree", "ovfl", ",", "gtop", ",", "ftop", ",", "goff", ",", "foff", ";", "tree", "t", ";", "int", "gpr_save_area_size", ";", "int", "fpr_save_area_size", ";", "int", "fpr_offset", ";", "cum", "=", "&", "current_function_args_info", ";", "gpr_save_area_size", "=", "(", "MAX_ARGS_IN_REGISTERS", "-", "cum", "->", "num_gprs", ")", "*", "UNITS_PER_WORD", ";", "fpr_save_area_size", "=", "(", "MAX_ARGS_IN_REGISTERS", "-", "cum", "->", "num_fprs", ")", "*", "UNITS_PER_FPREG", ";", "f_ovfl", "=", "TYPE_FIELDS", "(", "va_list_type_node", ")", ";", "f_gtop", "=", "TREE_CHAIN", "(", "f_ovfl", ")", ";", "f_ftop", "=", "TREE_CHAIN", "(", "f_gtop", ")", ";", "f_goff", "=", "TREE_CHAIN", "(", "f_ftop", ")", ";", "f_foff", "=", "TREE_CHAIN", "(", "f_goff", ")", ";", "ovfl", "=", "build", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_ovfl", ")", ",", "valist", ",", "f_ovfl", ",", "NULL_TREE", ")", ";", "gtop", "=", "build", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_gtop", ")", ",", "valist", ",", "f_gtop", ",", "NULL_TREE", ")", ";", "ftop", "=", "build", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_ftop", ")", ",", "valist", ",", "f_ftop", ",", "NULL_TREE", ")", ";", "goff", "=", "build", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_goff", ")", ",", "valist", ",", "f_goff", ",", "NULL_TREE", ")", ";", "foff", "=", "build", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_foff", ")", ",", "valist", ",", "f_foff", ",", "NULL_TREE", ")", ";", "t", "=", "make_tree", "(", "TREE_TYPE", "(", "ovfl", ")", ",", "virtual_incoming_args_rtx", ")", ";", "if", "(", "cum", "->", "stack_words", ">", "0", ")", "t", "=", "build", "(", "PLUS_EXPR", ",", "TREE_TYPE", "(", "ovfl", ")", ",", "t", ",", "build_int_cst", "(", "NULL_TREE", ",", "cum", "->", "stack_words", "*", "UNITS_PER_WORD", ")", ")", ";", "t", "=", "build", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "ovfl", ")", ",", "ovfl", ",", "t", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "make_tree", "(", "TREE_TYPE", "(", "gtop", ")", ",", "virtual_incoming_args_rtx", ")", ";", "t", "=", "build", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "gtop", ")", ",", "gtop", ",", "t", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "make_tree", "(", "TREE_TYPE", "(", "ftop", ")", ",", "virtual_incoming_args_rtx", ")", ";", "fpr_offset", "=", "gpr_save_area_size", "+", "UNITS_PER_FPVALUE", "-", "1", ";", "fpr_offset", "&=", "~", "(", "UNITS_PER_FPVALUE", "-", "1", ")", ";", "if", "(", "fpr_offset", ")", "t", "=", "build", "(", "PLUS_EXPR", ",", "TREE_TYPE", "(", "ftop", ")", ",", "t", ",", "build_int_cst", "(", "NULL_TREE", ",", "-", "fpr_offset", ")", ")", ";", "t", "=", "build", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "ftop", ")", ",", "ftop", ",", "t", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "build", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "goff", ")", ",", "goff", ",", "build_int_cst", "(", "NULL_TREE", ",", "gpr_save_area_size", ")", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "build", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "foff", ")", ",", "foff", ",", "build_int_cst", "(", "NULL_TREE", ",", "fpr_save_area_size", ")", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "}", "else", "{", "nextarg", "=", "plus_constant", "(", "nextarg", ",", "-", "cfun", "->", "machine", "->", "varargs_size", ")", ";", "std_expand_builtin_va_start", "(", "valist", ",", "nextarg", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "va_start", "."], "TS_V_token": ["mips", "0", "1", "1"], "File": "mips3", "Func": "mips_va_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32620, "Length": 491} {"ground_truth": ["", "static", "bool", "mips_vector_mode_supported_p", "(", "enum", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "V2SFmode", ":", "return", "TARGET_PAIRED_SINGLE_FLOAT", ";", "case", "V2HImode", ":", "case", "V4QImode", ":", "return", "TARGET_DSP", ";", "default", ":", "return", "false", ";", "}", "}", ""], "natrual_language": ["Target", "hook", "for", "vector_mode_supported_p", "."], "TS_V_token": ["mips"], "File": "mips3", "Func": "mips_vector_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32621, "Length": 36} {"ground_truth": ["", "void", "print_operand_address", "(", "FILE", "*", "file", ",", "rtx", "x", ")", "{", "struct", "mips_address_info", "addr", ";", "if", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "word_mode", ",", "true", ")", ")", "switch", "(", "addr", ".", "type", ")", "{", "case", "ADDRESS_REG", ":", "print_operand", "(", "file", ",", "addr", ".", "offset", ",", "0", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "REGNO", "(", "addr", ".", "reg", ")", "]", ")", ";", "return", ";", "case", "ADDRESS_LO_SUM", ":", "print_operand", "(", "file", ",", "addr", ".", "offset", ",", "'R'", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "REGNO", "(", "addr", ".", "reg", ")", "]", ")", ";", "return", ";", "case", "ADDRESS_CONST_INT", ":", "output_addr_const", "(", "file", ",", "x", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "0", "]", ")", ";", "return", ";", "case", "ADDRESS_SYMBOLIC", ":", "output_addr_const", "(", "file", ",", "x", ")", ";", "return", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Print", "the", "operand", "address", "represented", "by", "the", "rtx", "addr"], "TS_V_token": ["mips", "0", "\"(%s)\"", "\"(%s)\"", "\"(%s)\"", "0"], "File": "mips3", "Func": "print_operand_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32622, "Length": 144} {"ground_truth": ["", "static", "void", "print_operand_reloc", "(", "FILE", "*", "file", ",", "rtx", "op", ",", "const", "char", "*", "*", "relocs", ")", "{", "enum", "mips_symbol_type", "symbol_type", ";", "const", "char", "*", "p", ";", "rtx", "base", ";", "HOST_WIDE_INT", "offset", ";", "if", "(", "!", "mips_symbolic_constant_p", "(", "op", ",", "&", "symbol_type", ")", "||", "relocs", "[", "symbol_type", "]", "==", "0", ")", "fatal_insn", "(", "\"PRINT_OPERAND, invalid operand for relocation\"", ",", "op", ")", ";", "mips_split_const", "(", "op", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "UNSPEC_ADDRESS_P", "(", "base", ")", ")", "op", "=", "plus_constant", "(", "UNSPEC_ADDRESS", "(", "base", ")", ",", "offset", ")", ";", "fputs", "(", "relocs", "[", "symbol_type", "]", ",", "file", ")", ";", "output_addr_const", "(", "file", ",", "op", ")", ";", "for", "(", "p", "=", "relocs", "[", "symbol_type", "]", ";", "*", "p", "!=", "0", ";", "p", "++", ")", "if", "(", "*", "p", "==", "'('", ")", "fputc", "(", "')'", ",", "file", ")", ";", "}", ""], "natrual_language": ["Print", "symbolic", "operand", "OP", ",", "which", "is", "part", "of", "a", "HIGH", "or", "LO_SUM", ".", "RELOCS", "is", "the", "array", "of", "relocations", "to", "use", "."], "TS_V_token": ["mips", "0", "\"PRINT_OPERAND, invalid operand for relocation\"", "0"], "File": "mips3", "Func": "print_operand_reloc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32623, "Length": 137} {"ground_truth": ["", "static", "int", "symbolic_expression_p", "(", "rtx", "x", ")", "{", "if", "(", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", ")", "return", "1", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "CONST", ")", "return", "symbolic_expression_p", "(", "XEXP", "(", "x", ",", "0", ")", ")", ";", "if", "(", "UNARY_P", "(", "x", ")", ")", "return", "symbolic_expression_p", "(", "XEXP", "(", "x", ",", "0", ")", ")", ";", "if", "(", "ARITHMETIC_P", "(", "x", ")", ")", "return", "(", "symbolic_expression_p", "(", "XEXP", "(", "x", ",", "0", ")", ")", "||", "symbolic_expression_p", "(", "XEXP", "(", "x", ",", "1", ")", ")", ")", ";", "return", "0", ";", "}", ""], "natrual_language": ["Return", "1", "if", "X", "contains", "a", "symbolic", "expression", ".", "We", "know", "these", "expressions", "will", "have", "one", "of", "a", "few", "well", "defined", "forms", ",", "so", "we", "need", "only", "check", "those", "forms", "."], "TS_V_token": ["mips", "1", "0", "0", "0", "1", "0"], "File": "mips3", "Func": "symbolic_expression_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32624, "Length": 92} {"ground_truth": ["", "static", "void", "vr4130_align_insns", "(", "void", ")", "{", "struct", "mips_sim", "state", ";", "rtx", "insn", ",", "subinsn", ",", "last", ",", "last2", ",", "next", ";", "bool", "aligned_p", ";", "dfa_start", "(", ")", ";", "last", "=", "0", ";", "last2", "=", "0", ";", "aligned_p", "=", "true", ";", "mips_sim_init", "(", "&", "state", ",", "alloca", "(", "state_size", "(", ")", ")", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", "!=", "0", ";", "insn", "=", "next", ")", "{", "unsigned", "int", "length", ";", "next", "=", "NEXT_INSN", "(", "insn", ")", ";", "vr4130_avoid_branch_rt_conflict", "(", "insn", ")", ";", "if", "(", "USEFUL_INSN_P", "(", "insn", ")", ")", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "{", "mips_sim_wait_insn", "(", "&", "state", ",", "subinsn", ")", ";", "if", "(", "state", ".", "insns_left", "!=", "state", ".", "issue_rate", "&&", "!", "CALL_P", "(", "subinsn", ")", ")", "{", "if", "(", "subinsn", "==", "SEQ_BEGIN", "(", "insn", ")", "&&", "aligned_p", ")", "{", "emit_insn_after", "(", "gen_nop", "(", ")", ",", "last2", ")", ";", "aligned_p", "=", "false", ";", "}", "else", "if", "(", "subinsn", "!=", "SEQ_BEGIN", "(", "insn", ")", "&&", "!", "aligned_p", ")", "{", "emit_insn_after", "(", "gen_nop", "(", ")", ",", "last", ")", ";", "aligned_p", "=", "true", ";", "}", "}", "mips_sim_issue_insn", "(", "&", "state", ",", "subinsn", ")", ";", "}", "mips_sim_finish_insn", "(", "&", "state", ",", "insn", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", ">", "0", ")", "{", "if", "(", "NONJUMP_INSN_P", "(", "SEQ_BEGIN", "(", "insn", ")", ")", "&&", "(", "recog_memoized", "(", "insn", ")", "<", "0", "||", "length", ">=", "8", ")", ")", "{", "next", "=", "emit_insn_after", "(", "gen_align", "(", "GEN_INT", "(", "3", ")", ")", ",", "insn", ")", ";", "next", "=", "NEXT_INSN", "(", "next", ")", ";", "mips_sim_next_cycle", "(", "&", "state", ")", ";", "aligned_p", "=", "true", ";", "}", "else", "if", "(", "length", "&", "4", ")", "aligned_p", "=", "!", "aligned_p", ";", "last2", "=", "last", ";", "last", "=", "insn", ";", "}", "if", "(", "LABEL_P", "(", "insn", ")", "&&", "label_to_alignment", "(", "insn", ")", ">=", "3", ")", "aligned_p", "=", "true", ";", "}", "dfa_finish", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "-mvr4130-align", ".", "Go", "through", "each", "basic", "block", "and", "simulate", "the", "processor", "pipeline", ".", "If", "we", "find", "that", "a", "pair", "of", "instructions", "could", "execute", "in", "parallel", ",", "and", "the", "first", "of", "those", "instruction", "is", "not", "8-byte", "aligned", ",", "insert", "a", "nop", "to", "make", "it", "aligned", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "8", "3", "4", "3"], "File": "mips3", "Func": "vr4130_align_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32625, "Length": 314} {"ground_truth": ["", "static", "void", "vr4130_avoid_branch_rt_conflict", "(", "rtx", "insn", ")", "{", "rtx", "first", ",", "second", ";", "first", "=", "SEQ_BEGIN", "(", "insn", ")", ";", "second", "=", "SEQ_END", "(", "insn", ")", ";", "if", "(", "JUMP_P", "(", "first", ")", "&&", "NONJUMP_INSN_P", "(", "second", ")", "&&", "GET_CODE", "(", "PATTERN", "(", "first", ")", ")", "==", "SET", "&&", "GET_CODE", "(", "SET_DEST", "(", "PATTERN", "(", "first", ")", ")", ")", "==", "PC", "&&", "GET_CODE", "(", "SET_SRC", "(", "PATTERN", "(", "first", ")", ")", ")", "==", "IF_THEN_ELSE", ")", "{", "rtx", "cond", "=", "XEXP", "(", "SET_SRC", "(", "PATTERN", "(", "first", ")", ")", ",", "0", ")", ";", "if", "(", "(", "GET_CODE", "(", "cond", ")", "==", "EQ", "||", "GET_CODE", "(", "cond", ")", "==", "NE", ")", "&&", "REG_P", "(", "XEXP", "(", "cond", ",", "0", ")", ")", "&&", "REG_P", "(", "XEXP", "(", "cond", ",", "1", ")", ")", "&&", "reg_referenced_p", "(", "XEXP", "(", "cond", ",", "1", ")", ",", "PATTERN", "(", "second", ")", ")", "&&", "!", "reg_referenced_p", "(", "XEXP", "(", "cond", ",", "0", ")", ",", "PATTERN", "(", "second", ")", ")", ")", "{", "rtx", "tmp", "=", "XEXP", "(", "cond", ",", "0", ")", ";", "XEXP", "(", "cond", ",", "0", ")", "=", "XEXP", "(", "cond", ",", "1", ")", ";", "XEXP", "(", "cond", ",", "1", ")", "=", "tmp", ";", "}", "}", "}", ""], "natrual_language": ["The", "VR4130", "pipeline", "issues", "aligned", "pairs", "of", "instructions", "together", ",", "but", "it", "stalls", "the", "second", "instruction", "if", "it", "depends", "on", "the", "first", ".", "In", "order", "to", "cut", "down", "the", "amount", "of", "logic", "required", ",", "this", "dependence", "check", "is", "not", "based", "on", "a", "full", "instruction", "decode", ".", "Instead", ",", "any", "non-SPECIAL", "instruction", "is", "assumed", "to", "modify", "the", "register", "specified", "by", "bits", "20-16", "(", "which", "is", "usually", "the", "``", "rt", "''", "field", ")", ".", "In", "beq", ",", "beql", ",", "bne", "and", "bnel", "instructions", ",", "the", "rt", "field", "is", "actually", "an", "input", ",", "so", "we", "can", "end", "up", "with", "a", "false", "dependence", "between", "the", "branch", "and", "its", "delay", "slot", ".", "If", "this", "situation", "occurs", "in", "instruction", "INSN", ",", "try", "to", "avoid", "it", "by", "swapping", "rs", "and", "rt", "."], "TS_V_token": ["mips", "0", "0", "1", "1", "0", "0", "0", "1", "1"], "File": "mips3", "Func": "vr4130_avoid_branch_rt_conflict", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32626, "Length": 198} {"ground_truth": ["", "static", "void", "vr4130_reorder", "(", "rtx", "*", "ready", ",", "int", "nready", ")", "{", "if", "(", "vr4130_swap_insns_p", "(", "ready", "[", "nready", "-", "1", "]", ",", "ready", "[", "nready", "-", "2", "]", ")", ")", "mips_promote_ready", "(", "ready", ",", "nready", "-", "2", ",", "nready", "-", "1", ")", ";", "}", ""], "natrual_language": ["A", "TUNE_MIPS4130", "helper", "function", ".", "(", "READY", ",", "NREADY", ")", "describes", "a", "ready", "queue", "with", "at", "least", "two", "instructions", ".", "Swap", "the", "first", "two", "if", "vr4130_swap_insns_p", "says", "that", "it", "could", "be", "worthwhile", "."], "TS_V_token": ["mips", "1", "2", "2", "1"], "File": "mips3", "Func": "vr4130_reorder", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32627, "Length": 45} {"ground_truth": ["", "static", "bool", "vr4130_swap_insns_p", "(", "rtx", "insn1", ",", "rtx", "insn2", ")", "{", "rtx", "dep", ";", "for", "(", "dep", "=", "INSN_DEPEND", "(", "insn1", ")", ";", "dep", "!=", "0", ";", "dep", "=", "XEXP", "(", "dep", ",", "1", ")", ")", "if", "(", "REG_NOTE_KIND", "(", "dep", ")", "==", "REG_DEP_ANTI", "&&", "INSN_PRIORITY", "(", "XEXP", "(", "dep", ",", "0", ")", ")", ">", "INSN_PRIORITY", "(", "insn2", ")", "&&", "recog_memoized", "(", "XEXP", "(", "dep", ",", "0", ")", ")", ">=", "0", "&&", "get_attr_vr4130_class", "(", "XEXP", "(", "dep", ",", "0", ")", ")", "==", "VR4130_CLASS_ALU", ")", "return", "false", ";", "if", "(", "vr4130_last_insn", "!=", "0", "&&", "recog_memoized", "(", "insn1", ")", ">=", "0", "&&", "recog_memoized", "(", "insn2", ")", ">=", "0", ")", "{", "enum", "attr_vr4130_class", "class1", "=", "get_attr_vr4130_class", "(", "insn1", ")", ";", "enum", "attr_vr4130_class", "class2", "=", "get_attr_vr4130_class", "(", "insn2", ")", ";", "if", "(", "class1", "!=", "class2", "||", "class1", "==", "VR4130_CLASS_ALU", ")", "{", "bool", "dep1", "=", "vr4130_true_reg_dependence_p", "(", "insn1", ")", ";", "bool", "dep2", "=", "vr4130_true_reg_dependence_p", "(", "insn2", ")", ";", "if", "(", "dep1", "!=", "dep2", ")", "return", "dep1", ";", "if", "(", "class1", "!=", "VR4130_CLASS_ALU", "&&", "recog_memoized", "(", "vr4130_last_insn", ")", ">=", "0", "&&", "class1", "==", "get_attr_vr4130_class", "(", "vr4130_last_insn", ")", ")", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["A", "TUNE_MIPS4130", "helper", "function", ".", "Given", "that", "INSN1", "is", "at", "the", "head", "of", "the", "ready", "queue", "and", "that", "INSN2", "is", "the", "instruction", "after", "it", ",", "return", "true", "if", "it", "is", "worth", "promoting", "INSN2", "ahead", "of", "INSN1", ".", "Look", "for", "cases", "in", "which", "INSN1", "and", "INSN2", "can", "probably", "issue", "in", "parallel", ",", "but", "for", "which", "(", "INSN2", ",", "INSN1", ")", "should", "be", "less", "sensitive", "to", "instruction", "alignment", "than", "(", "INSN1", ",", "INSN2", ")", ".", "See", "4130.md", "for", "more", "details", "."], "TS_V_token": ["mips", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips3", "Func": "vr4130_swap_insns_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32628, "Length": 191} {"ground_truth": ["", "static", "bool", "vr4130_true_reg_dependence_p", "(", "rtx", "insn", ")", "{", "note_stores", "(", "PATTERN", "(", "vr4130_last_insn", ")", ",", "vr4130_true_reg_dependence_p_1", ",", "&", "insn", ")", ";", "return", "insn", "==", "0", ";", "}", ""], "natrual_language": ["Return", "true", "if", "there", "is", "true", "register", "dependence", "between", "vr4130_last_insn", "and", "INSN", "."], "TS_V_token": ["mips", "0"], "File": "mips3", "Func": "vr4130_true_reg_dependence_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32629, "Length": 27} {"ground_truth": ["", "static", "void", "vr4130_true_reg_dependence_p_1", "(", "rtx", "x", ",", "rtx", "pat", "ATTRIBUTE_UNUSED", ",", "void", "*", "data", ")", "{", "rtx", "*", "insn_ptr", "=", "data", ";", "if", "(", "REG_P", "(", "x", ")", "&&", "*", "insn_ptr", "!=", "0", "&&", "reg_referenced_p", "(", "x", ",", "PATTERN", "(", "*", "insn_ptr", ")", ")", ")", "*", "insn_ptr", "=", "0", ";", "}", ""], "natrual_language": ["A", "note_stores", "callback", "used", "by", "vr4130_true_reg_dependence_p", ".", "DATA", "points", "to", "an", "rtx", "that", "is", "initially", "an", "instruction", ".", "Nullify", "the", "rtx", "if", "the", "instruction", "uses", "the", "value", "of", "register", "X", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips3", "Func": "vr4130_true_reg_dependence_p_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32630, "Length": 51} {"ground_truth": ["", "bool", "and_operands_ok", "(", "machine_mode", "mode", ",", "rtx", "op1", ",", "rtx", "op2", ")", "{", "return", "(", "memory_operand", "(", "op1", ",", "mode", ")", "?", "and_load_operand", "(", "op2", ",", "mode", ")", ":", "and_reg_operand", "(", "op2", ",", "mode", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "iff", "OP1", "and", "OP2", "are", "valid", "operands", "together", "for", "the", "*", "and", "<", "MODE", ">", "3", "and", "*", "and", "<", "MODE", ">", "3_mips16", "patterns", ".", "For", "the", "cases", "to", "consider", ",", "see", "the", "table", "in", "the", "comment", "before", "the", "pattern", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "and_operands_ok", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32631, "Length": 38} {"ground_truth": ["", "inline", "bool", "mips_lo_sum_offset_hasher", "::", "equal", "(", "const", "value_type", "*", "entry", ",", "const", "compare_type", "*", "value", ")", "{", "return", "rtx_equal_p", "(", "entry", "->", "base", ",", "value", ")", ";", "}", ""], "natrual_language": ["Compare", "H1", "and", "H2", "for", "equivalence", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "equal", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32632, "Length": 28} {"ground_truth": ["", "inline", "hashval_t", "mips_lo_sum_offset_hasher", "::", "hash", "(", "const", "value_type", "*", "entry", ")", "{", "return", "mips_hash_base", "(", "entry", "->", "base", ")", ";", "}", ""], "natrual_language": ["Hash", "function", "for", "builtin", "functions", "with", "up", "to", "3", "arguments", "and", "a", "return", "type", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "hash", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32633, "Length": 21} {"ground_truth": ["", "static", "bool", "mflip_mips16_use_mips16_p", "(", "tree", "decl", ")", "{", "const", "char", "*", "name", ";", "bool", "base_is_mips16", "=", "(", "mips_base_compression_flags", "&", "MASK_MIPS16", ")", "!=", "0", ";", "if", "(", "!", "DECL_NAME", "(", "decl", ")", ")", "return", "!", "base_is_mips16", ";", "if", "(", "!", "mflip_mips16_htab", ")", "mflip_mips16_htab", "=", "hash_map", "<", "const", "char", "*", ",", "bool", ",", "mips16_flip_traits", ">", "::", "create_ggc", "(", "37", ")", ";", "name", "=", "IDENTIFIER_POINTER", "(", "DECL_NAME", "(", "decl", ")", ")", ";", "bool", "existed", ";", "bool", "*", "slot", "=", "&", "mflip_mips16_htab", "->", "get_or_insert", "(", "name", ",", "&", "existed", ")", ";", "if", "(", "!", "existed", ")", "{", "mips16_flipper", "=", "!", "mips16_flipper", ";", "*", "slot", "=", "mips16_flipper", "?", "!", "base_is_mips16", ":", "base_is_mips16", ";", "}", "return", "*", "slot", ";", "}", ""], "natrual_language": ["DECL", "is", "a", "function", "that", "needs", "a", "default", "``", "mips16", "''", "or", "``", "nomips16", "''", "attribute", "for", "-mflip-mips16", ".", "Return", "true", "if", "it", "should", "use", "``", "mips16", "''", "and", "false", "if", "it", "should", "use", "``", "nomips16", "''", "."], "TS_V_token": ["mips", "0", "37"], "File": "mips4", "Func": "mflip_mips16_use_mips16_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32634, "Length": 114} {"ground_truth": ["", "static", "rtx", "mips16e_build_save_restore", "(", "bool", "restore_p", ",", "unsigned", "int", "*", "mask_ptr", ",", "HOST_WIDE_INT", "*", "offset_ptr", ",", "unsigned", "int", "nargs", ",", "HOST_WIDE_INT", "size", ")", "{", "rtx", "pattern", ",", "set", ";", "HOST_WIDE_INT", "offset", ",", "top_offset", ";", "unsigned", "int", "i", ",", "regno", ";", "int", "n", ";", "gcc_assert", "(", "cfun", "->", "machine", "->", "frame", ".", "num_fp", "==", "0", ")", ";", "n", "=", "1", "+", "nargs", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips16e_save_restore_regs", ")", ";", "i", "++", ")", "if", "(", "BITSET_P", "(", "*", "mask_ptr", ",", "mips16e_save_restore_regs", "[", "i", "]", ")", ")", "n", "++", ";", "pattern", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "rtvec_alloc", "(", "n", ")", ")", ";", "n", "=", "0", ";", "set", "=", "gen_rtx_SET", "(", "VOIDmode", ",", "stack_pointer_rtx", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "restore_p", "?", "size", ":", "-", "size", ")", ")", ";", "RTX_FRAME_RELATED_P", "(", "set", ")", "=", "1", ";", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "++", ")", "=", "set", ";", "top_offset", "=", "restore_p", "?", "size", ":", "0", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nargs", ";", "i", "++", ")", "{", "offset", "=", "top_offset", "+", "i", "*", "UNITS_PER_WORD", ";", "set", "=", "mips16e_save_restore_reg", "(", "restore_p", ",", "true", ",", "offset", ",", "GP_ARG_FIRST", "+", "i", ")", ";", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "++", ")", "=", "set", ";", "}", "offset", "=", "top_offset", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips16e_save_restore_regs", ")", ";", "i", "++", ")", "{", "regno", "=", "mips16e_save_restore_regs", "[", "i", "]", ";", "if", "(", "BITSET_P", "(", "*", "mask_ptr", ",", "regno", ")", ")", "{", "offset", "-=", "UNITS_PER_WORD", ";", "set", "=", "mips16e_save_restore_reg", "(", "restore_p", ",", "false", ",", "offset", ",", "regno", ")", ";", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "++", ")", "=", "set", ";", "*", "mask_ptr", "&=", "~", "(", "1", "<<", "regno", ")", ";", "}", "}", "*", "offset_ptr", "=", "size", "+", "(", "offset", "-", "top_offset", ")", ";", "gcc_assert", "(", "n", "==", "XVECLEN", "(", "pattern", ",", "0", ")", ")", ";", "return", "pattern", ";", "}", ""], "natrual_language": ["Return", "RTL", "for", "a", "MIPS16e", "SAVE", "or", "RESTORE", "instruction", ";", "RESTORE_P", "says", "which", ".", "The", "instruction", "must", ":", "-", "Allocate", "or", "deallocate", "SIZE", "bytes", "in", "total", ";", "SIZE", "is", "known", "to", "be", "nonzero", ".", "-", "Save", "or", "restore", "as", "many", "registers", "in", "*", "MASK_PTR", "as", "possible", ".", "The", "instruction", "saves", "the", "first", "registers", "at", "the", "top", "of", "the", "allocated", "area", ",", "with", "the", "other", "registers", "below", "it", ".", "-", "Save", "NARGS", "argument", "registers", "above", "the", "allocated", "area", ".", "(", "NARGS", "is", "always", "zero", "if", "RESTORE_P", ".", ")", "The", "SAVE", "and", "RESTORE", "instructions", "can", "not", "save", "and", "restore", "all", "general", "registers", ",", "so", "there", "may", "be", "some", "registers", "left", "over", "for", "the", "caller", "to", "handle", ".", "Destructively", "modify", "*", "MASK_PTR", "so", "that", "it", "contains", "the", "registers", "that", "still", "need", "to", "be", "saved", "or", "restored", ".", "The", "caller", "can", "save", "these", "registers", "in", "the", "memory", "immediately", "below", "*", "OFFSET_PTR", ",", "which", "is", "a", "byte", "offset", "from", "the", "bottom", "of", "the", "allocated", "stack", "area", "."], "TS_V_token": ["mips", "0", "1", "0", "0", "1", "0", "0", "0", "0", "0", "0", "1", "0"], "File": "mips4", "Func": "mips16e_build_save_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32635, "Length": 317} {"ground_truth": ["", "static", "rtx", "mips16e_save_restore_reg", "(", "bool", "restore_p", ",", "bool", "reg_parm_p", ",", "HOST_WIDE_INT", "offset", ",", "unsigned", "int", "regno", ")", "{", "rtx", "reg", ",", "mem", ";", "mem", "=", "gen_frame_mem", "(", "SImode", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "offset", ")", ")", ";", "reg", "=", "gen_rtx_REG", "(", "SImode", ",", "regno", ")", ";", "if", "(", "restore_p", ")", "{", "mips_add_cfa_restore", "(", "reg", ")", ";", "return", "gen_rtx_SET", "(", "VOIDmode", ",", "reg", ",", "mem", ")", ";", "}", "if", "(", "reg_parm_p", ")", "return", "gen_rtx_SET", "(", "VOIDmode", ",", "mem", ",", "reg", ")", ";", "return", "mips_frame_set", "(", "mem", ",", "reg", ")", ";", "}", ""], "natrual_language": ["Return", "a", "move", "between", "register", "REGNO", "and", "memory", "location", "SP", "+", "OFFSET", ".", "REG_PARM_P", "is", "true", "if", "SP", "+", "OFFSET", "belongs", "to", "REG_PARM_STACK_SPACE", ".", "Make", "the", "move", "a", "load", "if", "RESTORE_P", ",", "otherwise", "make", "it", "a", "store", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips16e_save_restore_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32636, "Length": 92} {"ground_truth": ["", "static", "void", "mips16_emit_constants", "(", "struct", "mips16_constant", "*", "constants", ",", "rtx_insn", "*", "insn", ")", "{", "struct", "mips16_constant", "*", "c", ",", "*", "next", ";", "int", "align", ";", "align", "=", "0", ";", "for", "(", "c", "=", "constants", ";", "c", "!=", "NULL", ";", "c", "=", "next", ")", "{", "if", "(", "align", "<", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ")", "{", "int", "align_log", "=", "floor_log2", "(", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ")", ";", "insn", "=", "emit_insn_after", "(", "gen_align", "(", "GEN_INT", "(", "align_log", ")", ")", ",", "insn", ")", ";", "}", "align", "=", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ";", "insn", "=", "emit_label_after", "(", "c", "->", "label", ",", "insn", ")", ";", "insn", "=", "mips16_emit_constants_1", "(", "c", "->", "mode", ",", "c", "->", "value", ",", "insn", ")", ";", "next", "=", "c", "->", "next", ";", "free", "(", "c", ")", ";", "}", "emit_barrier_after", "(", "insn", ")", ";", "}", ""], "natrual_language": ["Dump", "out", "the", "constants", "in", "CONSTANTS", "after", "INSN", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips16_emit_constants", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32637, "Length": 138} {"ground_truth": ["", "static", "void", "mips16_load_branch_target", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "TARGET_ABICALLS", "&&", "!", "TARGET_ABSOLUTE_ABICALLS", ")", "{", "rtx", "page", ",", "low", ";", "if", "(", "mips_cfun_has_cprestore_slot_p", "(", ")", ")", "mips_emit_move", "(", "dest", ",", "mips_cprestore_slot", "(", "dest", ",", "true", ")", ")", ";", "else", "mips_emit_move", "(", "dest", ",", "pic_offset_table_rtx", ")", ";", "page", "=", "mips_unspec_address", "(", "src", ",", "SYMBOL_GOTOFF_PAGE", ")", ";", "low", "=", "mips_unspec_address", "(", "src", ",", "SYMBOL_GOT_PAGE_OFST", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "dest", ",", "PMODE_INSN", "(", "gen_unspec_got", ",", "(", "dest", ",", "page", ")", ")", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "dest", ",", "gen_rtx_LO_SUM", "(", "Pmode", ",", "dest", ",", "low", ")", ")", ")", ";", "}", "else", "{", "src", "=", "mips_unspec_address", "(", "src", ",", "SYMBOL_ABSOLUTE", ")", ";", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "code", "to", "load", "LABEL_REF", "SRC", "into", "MIPS16", "register", "DEST", ".", "This", "is", "called", "very", "late", "in", "mips_reorg", ",", "but", "the", "caller", "is", "required", "to", "run", "mips16_lay_out_constants", "on", "the", "result", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips16_load_branch_target", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32638, "Length": 129} {"ground_truth": ["", "static", "rtx", "mips16_local_alias", "(", "rtx", "func", ")", "{", "if", "(", "mips16_local_aliases", "==", "NULL", ")", "mips16_local_aliases", "=", "hash_map", "<", "rtx", ",", "rtx", ",", "local_alias_traits", ">", "::", "create_ggc", "(", "37", ")", ";", "bool", "existed", ";", "rtx", "*", "slot", "=", "&", "mips16_local_aliases", "->", "get_or_insert", "(", "func", ",", "&", "existed", ")", ";", "gcc_assert", "(", "slot", "!=", "NULL", ")", ";", "if", "(", "!", "existed", ")", "{", "const", "char", "*", "func_name", ",", "*", "local_name", ";", "rtx", "local", ";", "func_name", "=", "targetm", ".", "strip_name_encoding", "(", "XSTR", "(", "func", ",", "0", ")", ")", ";", "local_name", "=", "ACONCAT", "(", "(", "\"__fn_local_\"", ",", "func_name", ",", "NULL", ")", ")", ";", "local", "=", "gen_rtx_SYMBOL_REF", "(", "Pmode", ",", "ggc_strdup", "(", "local_name", ")", ")", ";", "SYMBOL_REF_FLAGS", "(", "local", ")", "=", "SYMBOL_REF_FLAGS", "(", "func", ")", "|", "SYMBOL_FLAG_LOCAL", ";", "*", "slot", "=", "local", ";", "}", "return", "*", "slot", ";", "}", ""], "natrual_language": ["FUNC", "is", "the", "symbol", "for", "a", "locally-defined", "hard-float", "MIPS16", "function", ".", "Return", "a", "local", "alias", "for", "it", ",", "creating", "a", "new", "one", "if", "necessary", "."], "TS_V_token": ["mips", "37", "0", "\"__fn_local_\""], "File": "mips4", "Func": "mips16_local_alias", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32639, "Length": 134} {"ground_truth": ["", "static", "void", "mips16_split_long_branches", "(", "void", ")", "{", "bool", "something_changed", ";", "if", "(", "!", "TARGET_MIPS16", ")", "return", ";", "do", "{", "rtx_insn", "*", "insn", ";", "shorten_branches", "(", "get_insns", "(", ")", ")", ";", "something_changed", "=", "false", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "if", "(", "JUMP_P", "(", "insn", ")", "&&", "get_attr_length", "(", "insn", ")", ">", "4", "&&", "(", "any_condjump_p", "(", "insn", ")", "||", "any_uncondjump_p", "(", "insn", ")", ")", ")", "{", "rtx", "old_label", ",", "temp", ",", "saved_temp", ";", "rtx_code_label", "*", "new_label", ";", "rtx", "target", ";", "rtx_insn", "*", "jump", ",", "*", "jump_sequence", ";", "start_sequence", "(", ")", ";", "saved_temp", "=", "gen_rtx_REG", "(", "Pmode", ",", "AT_REGNUM", ")", ";", "temp", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_REG_FIRST", "+", "2", ")", ";", "emit_move_insn", "(", "saved_temp", ",", "temp", ")", ";", "old_label", "=", "JUMP_LABEL", "(", "insn", ")", ";", "target", "=", "gen_rtx_LABEL_REF", "(", "Pmode", ",", "old_label", ")", ";", "mips16_load_branch_target", "(", "temp", ",", "target", ")", ";", "jump", "=", "emit_jump_insn", "(", "PMODE_INSN", "(", "gen_indirect_jump_and_restore", ",", "(", "temp", ",", "temp", ",", "saved_temp", ")", ")", ")", ";", "JUMP_LABEL", "(", "jump", ")", "=", "old_label", ";", "LABEL_NUSES", "(", "old_label", ")", "++", ";", "mips16_lay_out_constants", "(", "false", ")", ";", "if", "(", "simplejump_p", "(", "insn", ")", ")", "new_label", "=", "NULL", ";", "else", "{", "new_label", "=", "gen_label_rtx", "(", ")", ";", "emit_label", "(", "new_label", ")", ";", "}", "jump_sequence", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "emit_insn_after", "(", "jump_sequence", ",", "insn", ")", ";", "if", "(", "new_label", ")", "invert_jump", "(", "insn", ",", "new_label", ",", "false", ")", ";", "else", "delete_insn", "(", "insn", ")", ";", "something_changed", "=", "true", ";", "}", "}", "while", "(", "something_changed", ")", ";", "}", ""], "natrual_language": ["If", "we", "'re", "compiling", "a", "MIPS16", "function", ",", "look", "for", "and", "split", "any", "long", "branches", ".", "This", "must", "be", "called", "after", "all", "other", "instruction", "modifications", "in", "mips_reorg", "."], "TS_V_token": ["mips", "4", "2"], "File": "mips4", "Func": "mips16_split_long_branches", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32640, "Length": 262} {"ground_truth": ["", "int", "mips_address_insns", "(", "rtx", "x", ",", "machine_mode", "mode", ",", "bool", "might_split_p", ")", "{", "struct", "mips_address_info", "addr", ";", "int", "factor", ";", "if", "(", "mode", "!=", "BLKmode", "&&", "might_split_p", ")", "factor", "=", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "else", "factor", "=", "1", ";", "if", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", ")", "switch", "(", "addr", ".", "type", ")", "{", "case", "ADDRESS_REG", ":", "if", "(", "TARGET_MIPS16", "&&", "!", "mips16_unextended_reference_p", "(", "mode", ",", "addr", ".", "reg", ",", "UINTVAL", "(", "addr", ".", "offset", ")", ")", ")", "return", "factor", "*", "2", ";", "return", "factor", ";", "case", "ADDRESS_LO_SUM", ":", "return", "TARGET_MIPS16", "?", "factor", "*", "2", ":", "factor", ";", "case", "ADDRESS_CONST_INT", ":", "return", "factor", ";", "case", "ADDRESS_SYMBOLIC", ":", "return", "factor", "*", "mips_symbol_insns", "(", "addr", ".", "symbol_type", ",", "mode", ")", ";", "}", "return", "0", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "to", "load", "or", "store", "a", "value", "of", "mode", "MODE", "at", "X", ".", "Return", "0", "if", "X", "is", "n't", "valid", "for", "MODE", ".", "For", "mips16", "code", ",", "count", "extended", "instructions", "as", "two", "instructions", "."], "TS_V_token": ["mips", "1", "1", "2", "2", "0"], "File": "mips4", "Func": "mips_address_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32641, "Length": 139} {"ground_truth": ["", "int", "mips_adjust_insn_length", "(", "rtx_insn", "*", "insn", ",", "int", "length", ")", "{", "if", "(", "length", "==", "MAX_PIC_BRANCH_LENGTH", "&&", "JUMP_P", "(", "insn", ")", "&&", "INSN_CODE", "(", "insn", ")", ">=", "0", "&&", "get_attr_type", "(", "insn", ")", "==", "TYPE_BRANCH", ")", "{", "length", "=", "simplejump_p", "(", "insn", ")", "?", "0", ":", "8", ";", "length", "+=", "BASE_INSN_LENGTH", "*", "mips_load_label_num_insns", "(", ")", ";", "length", "+=", "TARGET_COMPRESSION", "?", "2", ":", "4", ";", "}", "if", "(", "CALL_P", "(", "insn", ")", "||", "(", "TARGET_MIPS16", "?", "simplejump_p", "(", "insn", ")", ":", "JUMP_P", "(", "insn", ")", ")", ")", "length", "+=", "TARGET_MIPS16", "?", "2", ":", "4", ";", "if", "(", "!", "cfun", "->", "machine", "->", "ignore_hazard_length_p", "&&", "INSN_P", "(", "insn", ")", "&&", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "break", ";", "case", "HAZARD_DELAY", ":", "length", "+=", "NOP_INSN_LENGTH", ";", "break", ";", "case", "HAZARD_HILO", ":", "length", "+=", "NOP_INSN_LENGTH", "*", "2", ";", "break", ";", "}", "return", "length", ";", "}", ""], "natrual_language": ["Return", "the", "length", "of", "INSN", ".", "LENGTH", "is", "the", "initial", "length", "computed", "by", "attributes", "in", "the", "machine-description", "file", "."], "TS_V_token": ["mips", "0", "0", "8", "2", "4", "2", "4", "0", "2"], "File": "mips4", "Func": "mips_adjust_insn_length", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32642, "Length": 153} {"ground_truth": ["", "static", "int", "mips_arg_partial_bytes", "(", "cumulative_args_t", "cum", ",", "machine_mode", "mode", ",", "tree", "type", ",", "bool", "named", ")", "{", "struct", "mips_arg_info", "info", ";", "mips_get_arg_info", "(", "&", "info", ",", "get_cumulative_args", "(", "cum", ")", ",", "mode", ",", "type", ",", "named", ")", ";", "return", "info", ".", "stack_words", ">", "0", "?", "info", ".", "reg_words", "*", "UNITS_PER_WORD", ":", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ARG_PARTIAL_BYTES", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_arg_partial_bytes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32643, "Length": 54} {"ground_truth": ["", "static", "void", "mips_atomic_assign_expand_fenv", "(", "tree", "*", "hold", ",", "tree", "*", "clear", ",", "tree", "*", "update", ")", "{", "if", "(", "!", "TARGET_HARD_FLOAT_ABI", ")", "return", ";", "tree", "exceptions_var", "=", "create_tmp_var", "(", "MIPS_ATYPE_USI", ")", ";", "tree", "fcsr_orig_var", "=", "create_tmp_var", "(", "MIPS_ATYPE_USI", ")", ";", "tree", "fcsr_mod_var", "=", "create_tmp_var", "(", "MIPS_ATYPE_USI", ")", ";", "tree", "get_fcsr", "=", "mips_builtin_decls", "[", "MIPS_GET_FCSR", "]", ";", "tree", "set_fcsr", "=", "mips_builtin_decls", "[", "MIPS_SET_FCSR", "]", ";", "tree", "get_fcsr_hold_call", "=", "build_call_expr", "(", "get_fcsr", ",", "0", ")", ";", "tree", "hold_assign_orig", "=", "build2", "(", "MODIFY_EXPR", ",", "MIPS_ATYPE_USI", ",", "fcsr_orig_var", ",", "get_fcsr_hold_call", ")", ";", "tree", "hold_mod_val", "=", "build2", "(", "BIT_AND_EXPR", ",", "MIPS_ATYPE_USI", ",", "fcsr_orig_var", ",", "build_int_cst", "(", "MIPS_ATYPE_USI", ",", "0xfffff003", ")", ")", ";", "tree", "hold_assign_mod", "=", "build2", "(", "MODIFY_EXPR", ",", "MIPS_ATYPE_USI", ",", "fcsr_mod_var", ",", "hold_mod_val", ")", ";", "tree", "set_fcsr_hold_call", "=", "build_call_expr", "(", "set_fcsr", ",", "1", ",", "fcsr_mod_var", ")", ";", "tree", "hold_all", "=", "build2", "(", "COMPOUND_EXPR", ",", "MIPS_ATYPE_USI", ",", "hold_assign_orig", ",", "hold_assign_mod", ")", ";", "*", "hold", "=", "build2", "(", "COMPOUND_EXPR", ",", "void_type_node", ",", "hold_all", ",", "set_fcsr_hold_call", ")", ";", "*", "clear", "=", "build_call_expr", "(", "set_fcsr", ",", "1", ",", "fcsr_mod_var", ")", ";", "tree", "get_fcsr_update_call", "=", "build_call_expr", "(", "get_fcsr", ",", "0", ")", ";", "*", "update", "=", "build2", "(", "MODIFY_EXPR", ",", "MIPS_ATYPE_USI", ",", "exceptions_var", ",", "get_fcsr_update_call", ")", ";", "tree", "set_fcsr_update_call", "=", "build_call_expr", "(", "set_fcsr", ",", "1", ",", "fcsr_orig_var", ")", ";", "*", "update", "=", "build2", "(", "COMPOUND_EXPR", ",", "void_type_node", ",", "*", "update", ",", "set_fcsr_update_call", ")", ";", "tree", "atomic_feraiseexcept", "=", "builtin_decl_implicit", "(", "BUILT_IN_ATOMIC_FERAISEEXCEPT", ")", ";", "tree", "int_exceptions_var", "=", "fold_convert", "(", "integer_type_node", ",", "exceptions_var", ")", ";", "tree", "atomic_feraiseexcept_call", "=", "build_call_expr", "(", "atomic_feraiseexcept", ",", "1", ",", "int_exceptions_var", ")", ";", "*", "update", "=", "build2", "(", "COMPOUND_EXPR", ",", "void_type_node", ",", "*", "update", ",", "atomic_feraiseexcept_call", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ATOMIC_ASSIGN_EXPAND_FENV", "."], "TS_V_token": ["mips", "0", "0xfffff003", "1", "1", "0", "1", "1"], "File": "mips4", "Func": "mips_atomic_assign_expand_fenv", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32644, "Length": 270} {"ground_truth": ["", "static", "void", "mips_avoid_hazard", "(", "rtx_insn", "*", "after", ",", "rtx_insn", "*", "insn", ",", "int", "*", "hilo_delay", ",", "rtx", "*", "delayed_reg", ",", "rtx", "lo_reg", ")", "{", "rtx", "pattern", ",", "set", ";", "int", "nops", ",", "ninsns", ";", "pattern", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "pattern", ")", "==", "ASM_INPUT", "||", "asm_noperands", "(", "pattern", ")", ">=", "0", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "ninsns", "=", "get_attr_length", "(", "insn", ")", "/", "4", ";", "if", "(", "ninsns", "==", "0", ")", "return", ";", "if", "(", "*", "hilo_delay", "<", "2", "&&", "reg_set_p", "(", "lo_reg", ",", "pattern", ")", ")", "nops", "=", "2", "-", "*", "hilo_delay", ";", "else", "if", "(", "*", "delayed_reg", "!=", "0", "&&", "reg_referenced_p", "(", "*", "delayed_reg", ",", "pattern", ")", ")", "nops", "=", "1", ";", "else", "nops", "=", "0", ";", "*", "hilo_delay", "+=", "nops", ";", "while", "(", "nops", "--", ">", "0", ")", "emit_insn_after", "(", "gen_hazard_nop", "(", ")", ",", "after", ")", ";", "*", "hilo_delay", "+=", "ninsns", ";", "*", "delayed_reg", "=", "0", ";", "if", "(", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "break", ";", "case", "HAZARD_HILO", ":", "*", "hilo_delay", "=", "0", ";", "break", ";", "case", "HAZARD_DELAY", ":", "set", "=", "single_set", "(", "insn", ")", ";", "gcc_assert", "(", "set", ")", ";", "*", "delayed_reg", "=", "SET_DEST", "(", "set", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Subroutine", "of", "mips_reorg", ".", "If", "there", "is", "a", "hazard", "between", "INSN", "and", "a", "previous", "instruction", ",", "avoid", "it", "by", "inserting", "nops", "after", "instruction", "AFTER", ".", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "describe", "the", "hazards", "that", "apply", "at", "this", "point", ".", "If", "*", "DELAYED_REG", "is", "non-null", ",", "INSN", "must", "wait", "a", "cycle", "before", "using", "the", "value", "of", "that", "register", ".", "*", "HILO_DELAY", "counts", "the", "number", "of", "instructions", "since", "the", "last", "hilo", "hazard", "(", "that", "is", ",", "the", "number", "of", "instructions", "since", "the", "last", "mflo", "or", "mfhi", ")", ".", "After", "inserting", "nops", "for", "INSN", ",", "update", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "for", "the", "next", "instruction", ".", "LO_REG", "is", "an", "rtx", "for", "the", "LO", "register", ",", "used", "in", "dependence", "checking", "."], "TS_V_token": ["mips", "0", "4", "0", "2", "2", "0", "1", "0", "0", "0", "0", "0"], "File": "mips4", "Func": "mips_avoid_hazard", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32645, "Length": 218} {"ground_truth": ["", "static", "int", "mips_binary_cost", "(", "rtx", "x", ",", "int", "single_cost", ",", "int", "double_cost", ",", "bool", "speed", ")", "{", "int", "cost", ";", "if", "(", "GET_MODE_SIZE", "(", "GET_MODE", "(", "x", ")", ")", "==", "UNITS_PER_WORD", "*", "2", ")", "cost", "=", "double_cost", ";", "else", "cost", "=", "single_cost", ";", "return", "(", "cost", "+", "set_src_cost", "(", "XEXP", "(", "x", ",", "0", ")", ",", "speed", ")", "+", "rtx_cost", "(", "XEXP", "(", "x", ",", "1", ")", ",", "GET_CODE", "(", "x", ")", ",", "1", ",", "speed", ")", ")", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "binary", "operation", "X", ",", "given", "that", "the", "instruction", "sequence", "for", "a", "word-sized", "or", "smaller", "operation", "has", "cost", "SINGLE_COST", "and", "that", "the", "sequence", "of", "a", "double-word", "operation", "has", "cost", "DOUBLE_COST", ".", "If", "SPEED", "is", "true", ",", "optimize", "for", "speed", "otherwise", "optimize", "for", "size", "."], "TS_V_token": ["mips", "2", "0", "1", "1"], "File": "mips4", "Func": "mips_binary_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32646, "Length": 80} {"ground_truth": ["", "static", "void", "mips_block_move_loop", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ",", "HOST_WIDE_INT", "bytes_per_iter", ")", "{", "rtx_code_label", "*", "label", ";", "rtx", "src_reg", ",", "dest_reg", ",", "final_src", ",", "test", ";", "HOST_WIDE_INT", "leftover", ";", "leftover", "=", "length", "%", "bytes_per_iter", ";", "length", "-=", "leftover", ";", "mips_adjust_block_mem", "(", "src", ",", "bytes_per_iter", ",", "&", "src_reg", ",", "&", "src", ")", ";", "mips_adjust_block_mem", "(", "dest", ",", "bytes_per_iter", ",", "&", "dest_reg", ",", "&", "dest", ")", ";", "final_src", "=", "expand_simple_binop", "(", "Pmode", ",", "PLUS", ",", "src_reg", ",", "GEN_INT", "(", "length", ")", ",", "0", ",", "0", ",", "OPTAB_WIDEN", ")", ";", "label", "=", "gen_label_rtx", "(", ")", ";", "emit_label", "(", "label", ")", ";", "mips_block_move_straight", "(", "dest", ",", "src", ",", "bytes_per_iter", ")", ";", "mips_emit_move", "(", "src_reg", ",", "plus_constant", "(", "Pmode", ",", "src_reg", ",", "bytes_per_iter", ")", ")", ";", "mips_emit_move", "(", "dest_reg", ",", "plus_constant", "(", "Pmode", ",", "dest_reg", ",", "bytes_per_iter", ")", ")", ";", "test", "=", "gen_rtx_NE", "(", "VOIDmode", ",", "src_reg", ",", "final_src", ")", ";", "if", "(", "Pmode", "==", "DImode", ")", "emit_jump_insn", "(", "gen_cbranchdi4", "(", "test", ",", "src_reg", ",", "final_src", ",", "label", ")", ")", ";", "else", "emit_jump_insn", "(", "gen_cbranchsi4", "(", "test", ",", "src_reg", ",", "final_src", ",", "label", ")", ")", ";", "if", "(", "leftover", ")", "mips_block_move_straight", "(", "dest", ",", "src", ",", "leftover", ")", ";", "}", ""], "natrual_language": ["Move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", "using", "a", "loop", "that", "moves", "MAX_MOVE_BYTES", "per", "iteration", ".", "LENGTH", "must", "be", "at", "least", "MAX_MOVE_BYTES", ".", "Assume", "that", "the", "memory", "regions", "do", "not", "overlap", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_block_move_loop", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32647, "Length": 199} {"ground_truth": ["", "static", "void", "mips_block_move_straight", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ")", "{", "HOST_WIDE_INT", "offset", ",", "delta", ";", "unsigned", "HOST_WIDE_INT", "bits", ";", "int", "i", ";", "machine_mode", "mode", ";", "rtx", "*", "regs", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", "==", "BITS_PER_WORD", "/", "2", "&&", "MEM_ALIGN", "(", "dest", ")", "==", "BITS_PER_WORD", "/", "2", ")", "bits", "=", "BITS_PER_WORD", "/", "2", ";", "else", "bits", "=", "BITS_PER_WORD", ";", "mode", "=", "mode_for_size", "(", "bits", ",", "MODE_INT", ",", "0", ")", ";", "delta", "=", "bits", "/", "BITS_PER_UNIT", ";", "regs", "=", "XALLOCAVEC", "(", "rtx", ",", "length", "/", "delta", ")", ";", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "{", "regs", "[", "i", "]", "=", "gen_reg_rtx", "(", "mode", ")", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", ">=", "bits", ")", "mips_emit_move", "(", "regs", "[", "i", "]", ",", "adjust_address", "(", "src", ",", "mode", ",", "offset", ")", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ext_as_unaligned_load", "(", "regs", "[", "i", "]", ",", "part", ",", "bits", ",", "0", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "}", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "if", "(", "MEM_ALIGN", "(", "dest", ")", ">=", "bits", ")", "mips_emit_move", "(", "adjust_address", "(", "dest", ",", "mode", ",", "offset", ")", ",", "regs", "[", "i", "]", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ins_as_unaligned_store", "(", "part", ",", "regs", "[", "i", "]", ",", "bits", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "offset", "<", "length", ")", "{", "src", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "dest", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "move_by_pieces", "(", "dest", ",", "src", ",", "length", "-", "offset", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ",", "0", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "straight-line", "code", "to", "move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", ".", "Assume", "that", "the", "areas", "do", "not", "overlap", "."], "TS_V_token": ["mips", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips4", "Func": "mips_block_move_straight", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32648, "Length": 347} {"ground_truth": ["", "static", "bool", "mips_callee_copies", "(", "cumulative_args_t", "cum", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ",", "const_tree", "type", "ATTRIBUTE_UNUSED", ",", "bool", "named", ")", "{", "return", "mips_abi", "==", "ABI_EABI", "&&", "named", ";", "}", ""], "natrual_language": ["Implement", "TARGET_CALLEE_COPIES", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_callee_copies", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32649, "Length": 28} {"ground_truth": ["", "static", "rtx", "mips_call_tls_get_addr", "(", "rtx", "sym", ",", "enum", "mips_symbol_type", "type", ",", "rtx", "v0", ")", "{", "rtx", "insn", ",", "loc", ",", "a0", ";", "a0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "!", "mips_tls_symbol", ")", "mips_tls_symbol", "=", "init_one_libfunc", "(", "\"__tls_get_addr\"", ")", ";", "loc", "=", "mips_unspec_address", "(", "sym", ",", "type", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "Pmode", ",", "a0", ",", "gen_rtx_LO_SUM", "(", "Pmode", ",", "pic_offset_table_rtx", ",", "loc", ")", ")", ")", ";", "insn", "=", "mips_expand_call", "(", "MIPS_CALL_NORMAL", ",", "v0", ",", "mips_tls_symbol", ",", "const0_rtx", ",", "NULL_RTX", ",", "false", ")", ";", "RTL_CONST_CALL_P", "(", "insn", ")", "=", "1", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "a0", ")", ";", "insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "return", "insn", ";", "}", ""], "natrual_language": ["Return", "an", "instruction", "sequence", "that", "calls", "__tls_get_addr", ".", "SYM", "is", "the", "TLS", "symbol", "we", "are", "referencing", "and", "TYPE", "is", "the", "symbol", "type", "to", "use", "(", "either", "global", "dynamic", "or", "local", "dynamic", ")", ".", "V0", "is", "an", "RTX", "for", "the", "return", "value", "location", "."], "TS_V_token": ["mips", "\"__tls_get_addr\"", "1"], "File": "mips4", "Func": "mips_call_tls_get_addr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32650, "Length": 124} {"ground_truth": ["", "bool", "mips_cannot_change_mode_class", "(", "machine_mode", "from", ",", "machine_mode", "to", ",", "enum", "reg_class", "rclass", ")", "{", "if", "(", "GET_MODE_SIZE", "(", "from", ")", "==", "8", "&&", "GET_MODE_SIZE", "(", "to", ")", "==", "8", "&&", "INTEGRAL_MODE_P", "(", "from", ")", "&&", "INTEGRAL_MODE_P", "(", "to", ")", ")", "return", "false", ";", "return", "reg_classes_intersect_p", "(", "FP_REGS", ",", "rclass", ")", ";", "}", ""], "natrual_language": ["Implement", "CANNOT_CHANGE_MODE_CLASS", "."], "TS_V_token": ["mips", "8", "8"], "File": "mips4", "Func": "mips_cannot_change_mode_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32651, "Length": 52} {"ground_truth": ["", "static", "bool", "mips_cannot_force_const_mem", "(", "machine_mode", "mode", ",", "rtx", "x", ")", "{", "enum", "mips_symbol_type", "type", ";", "rtx", "base", ",", "offset", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "HIGH", ")", "return", "true", ";", "if", "(", "CONST_INT_P", "(", "x", ")", "&&", "mips_legitimate_constant_p", "(", "mode", ",", "x", ")", ")", "return", "true", ";", "split_const", "(", "x", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "mips_symbolic_constant_p", "(", "base", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "type", ")", ")", "{", "if", "(", "mips_use_pcrel_pool_p", "[", "(", "int", ")", "type", "]", ")", "return", "false", ";", "if", "(", "SMALL_INT", "(", "offset", ")", "&&", "mips_symbol_insns", "(", "type", ",", "MAX_MACHINE_MODE", ")", ">", "0", ")", "return", "true", ";", "if", "(", "TARGET_MIPS16_PCREL_LOADS", "&&", "mips_got_symbol_type_p", "(", "type", ")", ")", "return", "true", ";", "}", "if", "(", "tls_referenced_p", "(", "x", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "can", "not", "be", "forced", "into", "a", "constant", "pool", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_cannot_force_const_mem", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32652, "Length": 132} {"ground_truth": ["", "bool", "mips_can_use_return_insn", "(", "void", ")", "{", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", ")", "return", "false", ";", "if", "(", "!", "reload_completed", ")", "return", "false", ";", "if", "(", "crtl", "->", "profile", ")", "return", "false", ";", "if", "(", "mips16_cfun_returns_in_fpr_p", "(", ")", ")", "return", "false", ";", "return", "cfun", "->", "machine", "->", "frame", ".", "total_size", "==", "0", ";", "}", ""], "natrual_language": ["Return", "nonzero", "if", "this", "function", "is", "known", "to", "have", "a", "null", "epilogue", ".", "This", "allows", "the", "optimizer", "to", "omit", "jumps", "to", "jumps", "if", "no", "stack", "was", "created", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_can_use_return_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32653, "Length": 55} {"ground_truth": ["", "static", "bool", "mips_cfun_call_saved_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "global_regs", "[", "regno", "]", ")", "return", "false", ";", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", "&&", "mips_interrupt_extra_call_saved_reg_p", "(", "regno", ")", ")", "return", "true", ";", "return", "(", "regno", "==", "GLOBAL_POINTER_REGNUM", "?", "TARGET_CALL_SAVED_GP", ":", "!", "call_really_used_regs", "[", "regno", "]", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "should", "treat", "register", "REGNO", "as", "call-saved", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_cfun_call_saved_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32654, "Length": 51} {"ground_truth": ["", "int", "mips_class_max_nregs", "(", "enum", "reg_class", "rclass", ",", "machine_mode", "mode", ")", "{", "int", "size", ";", "HARD_REG_SET", "left", ";", "size", "=", "0x8000", ";", "COPY_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "rclass", "]", ")", ";", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ")", "{", "if", "(", "HARD_REGNO_MODE_OK", "(", "ST_REG_FIRST", ",", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "4", ")", ";", "AND_COMPL_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ";", "}", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ")", "{", "if", "(", "HARD_REGNO_MODE_OK", "(", "FP_REG_FIRST", ",", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_FPREG", ")", ";", "AND_COMPL_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ";", "}", "if", "(", "!", "hard_reg_set_empty_p", "(", "left", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_WORD", ")", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "size", "-", "1", ")", "/", "size", ";", "}", ""], "natrual_language": ["Implement", "CLASS_MAX_NREGS", ".", "Usually", "all", "registers", "are", "word-sized", ".", "The", "only", "supported", "exception", "is", "-mgp64", "-msingle-float", ",", "which", "has", "64-bit", "words", "but", "32-bit", "float", "registers", ".", "A", "word-based", "calculation", "is", "correct", "even", "in", "that", "case", ",", "since", "-msingle-float", "disallows", "multi-FPR", "values", ".", "The", "FP", "status", "registers", "are", "an", "exception", "to", "this", "rule", ".", "They", "are", "always", "4", "bytes", "wide", "as", "they", "only", "hold", "condition", "code", "modes", ",", "and", "CCmode", "is", "always", "considered", "to", "be", "4", "bytes", "wide", "."], "TS_V_token": ["mips", "0x8000", "4", "1"], "File": "mips4", "Func": "mips_class_max_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32655, "Length": 162} {"ground_truth": ["", "static", "void", "mips_conditional_register_usage", "(", "void", ")", "{", "if", "(", "ISA_HAS_DSP", ")", "{", "global_regs", "[", "CCDSP_PO_REGNUM", "]", "=", "1", ";", "global_regs", "[", "CCDSP_SC_REGNUM", "]", "=", "1", ";", "}", "else", "AND_COMPL_HARD_REG_SET", "(", "accessible_reg_set", ",", "reg_class_contents", "[", "(", "int", ")", "DSP_ACC_REGS", "]", ")", ";", "if", "(", "!", "ISA_HAS_HILO", ")", "AND_COMPL_HARD_REG_SET", "(", "accessible_reg_set", ",", "reg_class_contents", "[", "(", "int", ")", "MD_REGS", "]", ")", ";", "if", "(", "!", "TARGET_HARD_FLOAT", ")", "{", "AND_COMPL_HARD_REG_SET", "(", "accessible_reg_set", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ";", "AND_COMPL_HARD_REG_SET", "(", "accessible_reg_set", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ";", "}", "else", "if", "(", "!", "ISA_HAS_8CC", ")", "{", "AND_COMPL_HARD_REG_SET", "(", "accessible_reg_set", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ";", "if", "(", "!", "ISA_HAS_CCF", ")", "SET_HARD_REG_BIT", "(", "accessible_reg_set", ",", "FPSW_REGNUM", ")", ";", "fixed_regs", "[", "FPSW_REGNUM", "]", "=", "call_used_regs", "[", "FPSW_REGNUM", "]", "=", "1", ";", "}", "if", "(", "TARGET_MIPS16", ")", "{", "fixed_regs", "[", "18", "]", "=", "call_used_regs", "[", "18", "]", "=", "1", ";", "fixed_regs", "[", "19", "]", "=", "call_used_regs", "[", "19", "]", "=", "1", ";", "fixed_regs", "[", "20", "]", "=", "call_used_regs", "[", "20", "]", "=", "1", ";", "fixed_regs", "[", "21", "]", "=", "call_used_regs", "[", "21", "]", "=", "1", ";", "fixed_regs", "[", "22", "]", "=", "call_used_regs", "[", "22", "]", "=", "1", ";", "fixed_regs", "[", "23", "]", "=", "call_used_regs", "[", "23", "]", "=", "1", ";", "fixed_regs", "[", "26", "]", "=", "call_used_regs", "[", "26", "]", "=", "1", ";", "fixed_regs", "[", "27", "]", "=", "call_used_regs", "[", "27", "]", "=", "1", ";", "fixed_regs", "[", "30", "]", "=", "call_used_regs", "[", "30", "]", "=", "1", ";", "if", "(", "optimize_size", ")", "{", "fixed_regs", "[", "8", "]", "=", "call_used_regs", "[", "8", "]", "=", "1", ";", "fixed_regs", "[", "9", "]", "=", "call_used_regs", "[", "9", "]", "=", "1", ";", "fixed_regs", "[", "10", "]", "=", "call_used_regs", "[", "10", "]", "=", "1", ";", "fixed_regs", "[", "11", "]", "=", "call_used_regs", "[", "11", "]", "=", "1", ";", "fixed_regs", "[", "12", "]", "=", "call_used_regs", "[", "12", "]", "=", "1", ";", "fixed_regs", "[", "13", "]", "=", "call_used_regs", "[", "13", "]", "=", "1", ";", "fixed_regs", "[", "14", "]", "=", "call_used_regs", "[", "14", "]", "=", "1", ";", "fixed_regs", "[", "15", "]", "=", "call_used_regs", "[", "15", "]", "=", "1", ";", "}", "AND_COMPL_HARD_REG_SET", "(", "operand_reg_set", ",", "reg_class_contents", "[", "(", "int", ")", "MD_REGS", "]", ")", ";", "}", "if", "(", "mips_abi", "==", "ABI_64", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", "+", "20", ";", "regno", "<", "FP_REG_FIRST", "+", "24", ";", "regno", "++", ")", "call_really_used_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "mips_abi", "==", "ABI_N32", "||", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", ")", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", "+", "21", ";", "regno", "<=", "FP_REG_FIRST", "+", "31", ";", "regno", "+=", "2", ")", "call_really_used_regs", "[", "regno", "]", "=", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "TARGET_LITTLE_ENDIAN", ")", "{", "unsigned", "int", "regno", ";", "mips_swap_registers", "(", "MD_REG_FIRST", ")", ";", "for", "(", "regno", "=", "DSP_ACC_REG_FIRST", ";", "regno", "<=", "DSP_ACC_REG_LAST", ";", "regno", "+=", "2", ")", "mips_swap_registers", "(", "regno", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "CONDITIONAL_REGISTER_USAGE", "."], "TS_V_token": ["mips", "1", "1", "1", "18", "18", "1", "19", "19", "1", "20", "20", "1", "21", "21", "1", "22", "22", "1", "23", "23", "1", "26", "26", "1", "27", "27", "1", "30", "30", "1", "8", "8", "1", "9", "9", "1", "10", "10", "1", "11", "11", "1", "12", "12", "1", "13", "13", "1", "14", "14", "1", "15", "15", "1", "20", "24", "1", "21", "31", "2", "1", "2"], "File": "mips4", "Func": "mips_conditional_register_usage", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32656, "Length": 490} {"ground_truth": ["", "int", "mips_const_insns", "(", "rtx", "x", ")", "{", "struct", "mips_integer_op", "codes", "[", "MIPS_MAX_INTEGER_OPS", "]", ";", "enum", "mips_symbol_type", "symbol_type", ";", "rtx", "offset", ";", "switch", "(", "GET_CODE", "(", "x", ")", ")", "{", "case", "HIGH", ":", "if", "(", "!", "mips_symbolic_constant_p", "(", "XEXP", "(", "x", ",", "0", ")", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "symbol_type", ")", "||", "!", "mips_split_p", "[", "symbol_type", "]", ")", "return", "0", ";", "return", "TARGET_MIPS16", "?", "4", ":", "1", ";", "case", "CONST_INT", ":", "if", "(", "TARGET_MIPS16", ")", "return", "(", "IN_RANGE", "(", "INTVAL", "(", "x", ")", ",", "0", ",", "255", ")", "?", "1", ":", "SMALL_OPERAND_UNSIGNED", "(", "INTVAL", "(", "x", ")", ")", "?", "2", ":", "IN_RANGE", "(", "-", "INTVAL", "(", "x", ")", ",", "0", ",", "255", ")", "?", "2", ":", "SMALL_OPERAND_UNSIGNED", "(", "-", "INTVAL", "(", "x", ")", ")", "?", "3", ":", "0", ")", ";", "return", "mips_build_integer", "(", "codes", ",", "INTVAL", "(", "x", ")", ")", ";", "case", "CONST_DOUBLE", ":", "case", "CONST_VECTOR", ":", "return", "!", "TARGET_MIPS16", "&&", "x", "==", "CONST0_RTX", "(", "GET_MODE", "(", "x", ")", ")", "?", "1", ":", "0", ";", "case", "CONST", ":", "if", "(", "CONST_GP_P", "(", "x", ")", ")", "return", "1", ";", "if", "(", "mips_symbolic_constant_p", "(", "x", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "symbol_type", ")", ")", "return", "mips_symbol_insns", "(", "symbol_type", ",", "MAX_MACHINE_MODE", ")", ";", "split_const", "(", "x", ",", "&", "x", ",", "&", "offset", ")", ";", "if", "(", "offset", "!=", "0", ")", "{", "int", "n", "=", "mips_const_insns", "(", "x", ")", ";", "if", "(", "n", "!=", "0", ")", "{", "if", "(", "SMALL_INT", "(", "offset", ")", ")", "return", "n", "+", "1", ";", "else", "if", "(", "!", "targetm", ".", "cannot_force_const_mem", "(", "GET_MODE", "(", "x", ")", ",", "x", ")", ")", "return", "n", "+", "1", "+", "mips_build_integer", "(", "codes", ",", "INTVAL", "(", "offset", ")", ")", ";", "}", "}", "return", "0", ";", "case", "SYMBOL_REF", ":", "case", "LABEL_REF", ":", "return", "mips_symbol_insns", "(", "mips_classify_symbol", "(", "x", ",", "SYMBOL_CONTEXT_LEA", ")", ",", "MAX_MACHINE_MODE", ")", ";", "default", ":", "return", "0", ";", "}", "}", ""], "natrual_language": ["Likewise", "for", "constant", "X", "."], "TS_V_token": ["mips", "0", "0", "4", "1", "0", "255", "1", "2", "0", "255", "2", "3", "0", "1", "0", "1", "0", "0", "1", "1", "0", "0"], "File": "mips4", "Func": "mips_const_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32657, "Length": 303} {"ground_truth": ["", "static", "machine_mode", "mips_dwarf_frame_reg_mode", "(", "int", "regno", ")", "{", "machine_mode", "mode", "=", "default_dwarf_frame_reg_mode", "(", "regno", ")", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", ")", "mode", "=", "SImode", ";", "return", "mode", ";", "}", ""], "natrual_language": ["Implement", "TARGET_DWARF_FRAME_REG_MODE", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_dwarf_frame_reg_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32658, "Length": 37} {"ground_truth": ["", "void", "mips_emit_binary", "(", "enum", "rtx_code", "code", ",", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "target", ",", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "target", ")", ",", "op0", ",", "op1", ")", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "an", "instruction", "of", "the", "form", "(", "set", "TARGET", "(", "CODE", "OP0", "OP1", ")", ")", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_emit_binary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32659, "Length": 42} {"ground_truth": ["", "static", "void", "mips_emit_compare", "(", "enum", "rtx_code", "*", "code", ",", "rtx", "*", "op0", ",", "rtx", "*", "op1", ",", "bool", "need_eq_ne_p", ")", "{", "rtx", "cmp_op0", "=", "*", "op0", ";", "rtx", "cmp_op1", "=", "*", "op1", ";", "if", "(", "GET_MODE_CLASS", "(", "GET_MODE", "(", "*", "op0", ")", ")", "==", "MODE_INT", ")", "{", "if", "(", "!", "need_eq_ne_p", "&&", "*", "op1", "==", "const0_rtx", ")", ";", "else", "if", "(", "*", "code", "==", "EQ", "||", "*", "code", "==", "NE", ")", "{", "if", "(", "need_eq_ne_p", ")", "{", "*", "op0", "=", "mips_zero_if_equal", "(", "cmp_op0", ",", "cmp_op1", ")", ";", "*", "op1", "=", "const0_rtx", ";", "}", "else", "*", "op1", "=", "force_reg", "(", "GET_MODE", "(", "cmp_op0", ")", ",", "cmp_op1", ")", ";", "}", "else", "{", "bool", "invert", "=", "false", ";", "*", "op0", "=", "gen_reg_rtx", "(", "GET_MODE", "(", "cmp_op0", ")", ")", ";", "mips_emit_int_order_test", "(", "*", "code", ",", "&", "invert", ",", "*", "op0", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "*", "code", "=", "(", "invert", "?", "EQ", ":", "NE", ")", ";", "*", "op1", "=", "const0_rtx", ";", "}", "}", "else", "if", "(", "ALL_FIXED_POINT_MODE_P", "(", "GET_MODE", "(", "cmp_op0", ")", ")", ")", "{", "*", "op0", "=", "gen_rtx_REG", "(", "CCDSPmode", ",", "CCDSP_CC_REGNUM", ")", ";", "mips_emit_binary", "(", "*", "code", ",", "*", "op0", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "*", "code", "=", "NE", ";", "*", "op1", "=", "const0_rtx", ";", "}", "else", "{", "enum", "rtx_code", "cmp_code", ";", "cmp_code", "=", "*", "code", ";", "if", "(", "ISA_HAS_CCF", ")", "{", "*", "code", "=", "NE", ";", "*", "op0", "=", "gen_reg_rtx", "(", "CCFmode", ")", ";", "}", "else", "{", "*", "code", "=", "mips_reversed_fp_cond", "(", "&", "cmp_code", ")", "?", "EQ", ":", "NE", ";", "if", "(", "ISA_HAS_8CC", ")", "*", "op0", "=", "mips_allocate_fcc", "(", "CCmode", ")", ";", "else", "*", "op0", "=", "gen_rtx_REG", "(", "CCmode", ",", "FPSW_REGNUM", ")", ";", "}", "*", "op1", "=", "const0_rtx", ";", "mips_emit_binary", "(", "cmp_code", ",", "*", "op0", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "}", "}", ""], "natrual_language": ["Convert", "a", "comparison", "into", "something", "that", "can", "be", "used", "in", "a", "branch", "or", "conditional", "move", ".", "On", "entry", ",", "*", "OP0", "and", "*", "OP1", "are", "the", "values", "being", "compared", "and", "*", "CODE", "is", "the", "code", "used", "to", "compare", "them", ".", "Update", "*", "CODE", ",", "*", "OP0", "and", "*", "OP1", "so", "that", "they", "describe", "the", "final", "comparison", ".", "If", "NEED_EQ_NE_P", ",", "then", "only", "EQ", "or", "NE", "comparisons", "against", "zero", "are", "possible", ",", "otherwise", "any", "standard", "branch", "condition", "can", "be", "used", ".", "The", "standard", "branch", "conditions", "are", ":", "-", "EQ", "or", "NE", "between", "two", "registers", ".", "-", "any", "comparison", "between", "a", "register", "and", "zero", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_emit_compare", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32660, "Length": 294} {"ground_truth": ["", "static", "void", "mips_emit_move_or_split", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "if", "(", "mips_split_move_p", "(", "dest", ",", "src", ",", "split_type", ")", ")", "mips_split_move", "(", "dest", ",", "src", ",", "split_type", ")", ";", "else", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "}", ""], "natrual_language": ["Emit", "a", "move", "from", "SRC", "to", "DEST", ",", "splitting", "compound", "moves", "into", "individual", "instructions", ".", "SPLIT_TYPE", "is", "the", "type", "of", "split", "to", "perform", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_emit_move_or_split", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32661, "Length": 44} {"ground_truth": ["", "static", "void", "mips_emit_probe_stack_range", "(", "HOST_WIDE_INT", "first", ",", "HOST_WIDE_INT", "size", ")", "{", "if", "(", "TARGET_MIPS16", ")", "sorry", "(", "\"-fstack-check=specific not implemented for MIPS16\"", ")", ";", "if", "(", "first", "+", "size", "<=", "32768", ")", "{", "HOST_WIDE_INT", "i", ";", "for", "(", "i", "=", "PROBE_INTERVAL", ";", "i", "<", "size", ";", "i", "+=", "PROBE_INTERVAL", ")", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "(", "first", "+", "i", ")", ")", ")", ";", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "(", "first", "+", "size", ")", ")", ")", ";", "}", "else", "{", "HOST_WIDE_INT", "rounded_size", ";", "rtx", "r3", "=", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ";", "rtx", "r12", "=", "MIPS_PROLOGUE_TEMP2", "(", "Pmode", ")", ";", "gcc_assert", "(", "first", "<=", "32768", ")", ";", "rounded_size", "=", "size", "&", "-", "PROBE_INTERVAL", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "r3", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "first", ")", ")", ")", ";", "if", "(", "rounded_size", ">", "32768", ")", "{", "emit_move_insn", "(", "r12", ",", "GEN_INT", "(", "rounded_size", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "r12", ",", "gen_rtx_MINUS", "(", "Pmode", ",", "r3", ",", "r12", ")", ")", ")", ";", "}", "else", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "r12", ",", "plus_constant", "(", "Pmode", ",", "r3", ",", "-", "rounded_size", ")", ")", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_probe_stack_range", ",", "(", "r3", ",", "r3", ",", "r12", ")", ")", ")", ";", "if", "(", "size", "!=", "rounded_size", ")", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "r12", ",", "rounded_size", "-", "size", ")", ")", ";", "}", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "code", "to", "probe", "a", "range", "of", "stack", "addresses", "from", "FIRST", "to", "FIRST+SIZE", ",", "inclusive", ".", "These", "are", "offsets", "from", "the", "current", "stack", "pointer", "."], "TS_V_token": ["mips", "\"-fstack-check=specific not implemented for MIPS16\"", "32768", "32768", "32768"], "File": "mips4", "Func": "mips_emit_probe_stack_range", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32662, "Length": 239} {"ground_truth": ["", "void", "mips_emit_save_slot_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "temp", ")", "{", "unsigned", "int", "regno", ";", "rtx", "mem", ";", "if", "(", "REG_P", "(", "src", ")", ")", "{", "regno", "=", "REGNO", "(", "src", ")", ";", "mem", "=", "dest", ";", "}", "else", "{", "regno", "=", "REGNO", "(", "dest", ")", ";", "mem", "=", "src", ";", "}", "if", "(", "regno", "==", "cfun", "->", "machine", "->", "global_pointer", "&&", "!", "mips_must_initialize_gp_p", "(", ")", ")", "{", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_move_gpdi", "(", "dest", ",", "src", ")", ")", ";", "else", "emit_insn", "(", "gen_move_gpsi", "(", "dest", ",", "src", ")", ")", ";", "return", ";", "}", "if", "(", "regno", "==", "HI_REGNUM", ")", "{", "if", "(", "REG_P", "(", "dest", ")", ")", "{", "mips_emit_move", "(", "temp", ",", "src", ")", ";", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mthisi_di", "(", "gen_rtx_REG", "(", "TImode", ",", "MD_REG_FIRST", ")", ",", "temp", ",", "gen_rtx_REG", "(", "DImode", ",", "LO_REGNUM", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_mthisi_di", "(", "gen_rtx_REG", "(", "DImode", ",", "MD_REG_FIRST", ")", ",", "temp", ",", "gen_rtx_REG", "(", "SImode", ",", "LO_REGNUM", ")", ")", ")", ";", "}", "else", "{", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mfhidi_ti", "(", "temp", ",", "gen_rtx_REG", "(", "TImode", ",", "MD_REG_FIRST", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_mfhisi_di", "(", "temp", ",", "gen_rtx_REG", "(", "DImode", ",", "MD_REG_FIRST", ")", ")", ")", ";", "mips_emit_move", "(", "dest", ",", "temp", ")", ";", "}", "}", "else", "if", "(", "mips_direct_save_slot_move_p", "(", "regno", ",", "mem", ",", "mem", "==", "src", ")", ")", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "else", "{", "gcc_assert", "(", "!", "reg_overlap_mentioned_p", "(", "dest", ",", "temp", ")", ")", ";", "mips_emit_move", "(", "temp", ",", "src", ")", ";", "mips_emit_move", "(", "dest", ",", "temp", ")", ";", "}", "if", "(", "MEM_P", "(", "dest", ")", ")", "mips_set_frame_expr", "(", "mips_frame_set", "(", "dest", ",", "src", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "a", "move", "from", "SRC", "to", "DEST", ",", "given", "that", "one", "of", "them", "is", "a", "register", "save", "slot", "and", "that", "the", "other", "is", "a", "register", ".", "TEMP", "is", "a", "temporary", "GPR", "of", "the", "same", "mode", "that", "is", "available", "if", "need", "be", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_emit_save_slot_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32663, "Length": 283} {"ground_truth": ["", "static", "void", "mips_emit_unary", "(", "enum", "rtx_code", "code", ",", "rtx", "target", ",", "rtx", "op0", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "target", ",", "gen_rtx_fmt_e", "(", "code", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ")", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "an", "instruction", "of", "the", "form", "(", "set", "TARGET", "(", "CODE", "OP0", ")", ")", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_emit_unary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32664, "Length": 38} {"ground_truth": ["", "static", "rtx_insn", "*", "mips_epilogue_emit_cfa_restores", "(", "void", ")", "{", "rtx_insn", "*", "insn", ";", "insn", "=", "get_last_insn", "(", ")", ";", "gcc_assert", "(", "insn", "&&", "!", "REG_NOTES", "(", "insn", ")", ")", ";", "if", "(", "mips_epilogue", ".", "cfa_restores", ")", "{", "RTX_FRAME_RELATED_P", "(", "insn", ")", "=", "1", ";", "REG_NOTES", "(", "insn", ")", "=", "mips_epilogue", ".", "cfa_restores", ";", "mips_epilogue", ".", "cfa_restores", "=", "0", ";", "}", "return", "insn", ";", "}", ""], "natrual_language": ["Attach", "all", "pending", "register", "saves", "to", "the", "previous", "instruction", ".", "Return", "that", "instruction", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips4", "Func": "mips_epilogue_emit_cfa_restores", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32665, "Length": 63} {"ground_truth": ["", "void", "mips_expand_atomic_qihi", "(", "union", "mips_gen_fn_ptrs", "generator", ",", "rtx", "result", ",", "rtx", "mem", ",", "rtx", "oldval", ",", "rtx", "newval", ")", "{", "rtx", "orig_addr", ",", "memsi_addr", ",", "memsi", ",", "shift", ",", "shiftsi", ",", "unshifted_mask", ";", "rtx", "unshifted_mask_reg", ",", "mask", ",", "inverted_mask", ",", "si_op", ";", "rtx", "res", "=", "NULL", ";", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "mem", ")", ";", "orig_addr", "=", "force_reg", "(", "Pmode", ",", "XEXP", "(", "mem", ",", "0", ")", ")", ";", "memsi_addr", "=", "mips_force_binary", "(", "Pmode", ",", "AND", ",", "orig_addr", ",", "force_reg", "(", "Pmode", ",", "GEN_INT", "(", "-", "4", ")", ")", ")", ";", "memsi", "=", "gen_rtx_MEM", "(", "SImode", ",", "memsi_addr", ")", ";", "set_mem_alias_set", "(", "memsi", ",", "ALIAS_SET_MEMORY_BARRIER", ")", ";", "MEM_VOLATILE_P", "(", "memsi", ")", "=", "MEM_VOLATILE_P", "(", "mem", ")", ";", "shift", "=", "mips_force_binary", "(", "Pmode", ",", "AND", ",", "orig_addr", ",", "GEN_INT", "(", "3", ")", ")", ";", "if", "(", "TARGET_BIG_ENDIAN", ")", "mips_emit_binary", "(", "XOR", ",", "shift", ",", "shift", ",", "GEN_INT", "(", "mode", "==", "QImode", "?", "3", ":", "2", ")", ")", ";", "mips_emit_binary", "(", "ASHIFT", ",", "shift", ",", "shift", ",", "GEN_INT", "(", "3", ")", ")", ";", "shiftsi", "=", "force_reg", "(", "SImode", ",", "gen_lowpart", "(", "SImode", ",", "shift", ")", ")", ";", "unshifted_mask", "=", "GEN_INT", "(", "GET_MODE_MASK", "(", "mode", ")", ")", ";", "unshifted_mask_reg", "=", "force_reg", "(", "SImode", ",", "unshifted_mask", ")", ";", "mask", "=", "mips_force_binary", "(", "SImode", ",", "ASHIFT", ",", "unshifted_mask_reg", ",", "shiftsi", ")", ";", "inverted_mask", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "inverted_mask", ",", "gen_rtx_NOT", "(", "SImode", ",", "mask", ")", ")", ")", ";", "if", "(", "oldval", "!=", "const0_rtx", ")", "{", "oldval", "=", "convert_modes", "(", "SImode", ",", "mode", ",", "oldval", ",", "true", ")", ";", "oldval", "=", "force_reg", "(", "SImode", ",", "oldval", ")", ";", "oldval", "=", "mips_force_binary", "(", "SImode", ",", "ASHIFT", ",", "oldval", ",", "shiftsi", ")", ";", "}", "if", "(", "newval", "&&", "newval", "!=", "const0_rtx", ")", "{", "newval", "=", "convert_modes", "(", "SImode", ",", "mode", ",", "newval", ",", "true", ")", ";", "newval", "=", "force_reg", "(", "SImode", ",", "newval", ")", ";", "newval", "=", "mips_force_binary", "(", "SImode", ",", "ASHIFT", ",", "newval", ",", "shiftsi", ")", ";", "}", "if", "(", "result", ")", "res", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "if", "(", "newval", ")", "si_op", "=", "generator", ".", "fn_6", "(", "res", ",", "memsi", ",", "mask", ",", "inverted_mask", ",", "oldval", ",", "newval", ")", ";", "else", "if", "(", "result", ")", "si_op", "=", "generator", ".", "fn_5", "(", "res", ",", "memsi", ",", "mask", ",", "inverted_mask", ",", "oldval", ")", ";", "else", "si_op", "=", "generator", ".", "fn_4", "(", "memsi", ",", "mask", ",", "inverted_mask", ",", "oldval", ")", ";", "emit_insn", "(", "si_op", ")", ";", "if", "(", "result", ")", "{", "mips_emit_binary", "(", "AND", ",", "res", ",", "res", ",", "mask", ")", ";", "mips_emit_binary", "(", "LSHIFTRT", ",", "res", ",", "res", ",", "shiftsi", ")", ";", "mips_emit_move", "(", "result", ",", "gen_lowpart", "(", "GET_MODE", "(", "result", ")", ",", "res", ")", ")", ";", "}", "}", ""], "natrual_language": ["Expand", "a", "QI", "or", "HI", "mode", "atomic", "memory", "operation", ".", "GENERATOR", "contains", "a", "pointer", "to", "the", "gen_", "*", "function", "that", "generates", "the", "SI", "mode", "underlying", "atomic", "operation", "using", "masks", "that", "we", "calculate", ".", "RESULT", "is", "the", "return", "register", "for", "the", "operation", ".", "Its", "value", "is", "NULL", "if", "unused", ".", "MEM", "is", "the", "location", "of", "the", "atomic", "access", ".", "OLDVAL", "is", "the", "first", "operand", "for", "the", "operation", ".", "NEWVAL", "is", "the", "optional", "second", "operand", "for", "the", "operation", ".", "Its", "value", "is", "NULL", "if", "unused", "."], "TS_V_token": ["mips", "0", "4", "3", "3", "2", "3"], "File": "mips4", "Func": "mips_expand_atomic_qihi", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32666, "Length": 452} {"ground_truth": ["", "bool", "mips_expand_block_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "length", ")", "{", "if", "(", "!", "ISA_HAS_LWL_LWR", ")", "return", "false", ";", "if", "(", "CONST_INT_P", "(", "length", ")", ")", "{", "if", "(", "INTVAL", "(", "length", ")", "<=", "MIPS_MAX_MOVE_BYTES_STRAIGHT", ")", "{", "mips_block_move_straight", "(", "dest", ",", "src", ",", "INTVAL", "(", "length", ")", ")", ";", "return", "true", ";", "}", "else", "if", "(", "optimize", ")", "{", "mips_block_move_loop", "(", "dest", ",", "src", ",", "INTVAL", "(", "length", ")", ",", "MIPS_MAX_MOVE_BYTES_PER_LOOP_ITER", ")", ";", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Expand", "a", "movmemsi", "instruction", ",", "which", "copies", "LENGTH", "bytes", "from", "memory", "reference", "SRC", "to", "memory", "reference", "DEST", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_expand_block_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32667, "Length": 84} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin", "(", "tree", "exp", ",", "rtx", "target", ",", "rtx", "subtarget", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ",", "int", "ignore", ")", "{", "tree", "fndecl", ";", "unsigned", "int", "fcode", ",", "avail", ";", "const", "struct", "mips_builtin_description", "*", "d", ";", "fndecl", "=", "TREE_OPERAND", "(", "CALL_EXPR_FN", "(", "exp", ")", ",", "0", ")", ";", "fcode", "=", "DECL_FUNCTION_CODE", "(", "fndecl", ")", ";", "gcc_assert", "(", "fcode", "<", "ARRAY_SIZE", "(", "mips_builtins", ")", ")", ";", "d", "=", "&", "mips_builtins", "[", "fcode", "]", ";", "avail", "=", "d", "->", "avail", "(", ")", ";", "gcc_assert", "(", "avail", "!=", "0", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "!", "(", "avail", "&", "BUILTIN_AVAIL_MIPS16", ")", ")", "{", "error", "(", "\"built-in function %qE not supported for MIPS16\"", ",", "DECL_NAME", "(", "fndecl", ")", ")", ";", "return", "ignore", "?", "const0_rtx", ":", "CONST0_RTX", "(", "mode", ")", ";", "}", "switch", "(", "d", "->", "builtin_type", ")", "{", "case", "MIPS_BUILTIN_DIRECT", ":", "return", "mips_expand_builtin_direct", "(", "d", "->", "icode", ",", "target", ",", "exp", ",", "true", ")", ";", "case", "MIPS_BUILTIN_DIRECT_NO_TARGET", ":", "return", "mips_expand_builtin_direct", "(", "d", "->", "icode", ",", "target", ",", "exp", ",", "false", ")", ";", "case", "MIPS_BUILTIN_MOVT", ":", "case", "MIPS_BUILTIN_MOVF", ":", "return", "mips_expand_builtin_movtf", "(", "d", "->", "builtin_type", ",", "d", "->", "icode", ",", "d", "->", "cond", ",", "target", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_CMP_ANY", ":", "case", "MIPS_BUILTIN_CMP_ALL", ":", "case", "MIPS_BUILTIN_CMP_UPPER", ":", "case", "MIPS_BUILTIN_CMP_LOWER", ":", "case", "MIPS_BUILTIN_CMP_SINGLE", ":", "return", "mips_expand_builtin_compare", "(", "d", "->", "builtin_type", ",", "d", "->", "icode", ",", "d", "->", "cond", ",", "target", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_BPOSGE32", ":", "return", "mips_expand_builtin_bposge", "(", "d", "->", "builtin_type", ",", "target", ")", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Expand", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_EXPAND_BUILTIN", "."], "TS_V_token": ["mips", "0", "0", "\"built-in function %qE not supported for MIPS16\""], "File": "mips4", "Func": "mips_expand_builtin", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32668, "Length": 242} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_insn", "(", "enum", "insn_code", "icode", ",", "unsigned", "int", "nops", ",", "struct", "expand_operand", "*", "ops", ",", "bool", "has_target_p", ")", "{", "if", "(", "!", "maybe_expand_insn", "(", "icode", ",", "nops", ",", "ops", ")", ")", "{", "error", "(", "\"invalid argument to built-in function\"", ")", ";", "return", "has_target_p", "?", "gen_reg_rtx", "(", "ops", "[", "0", "]", ".", "mode", ")", ":", "const0_rtx", ";", "}", "return", "has_target_p", "?", "ops", "[", "0", "]", ".", "value", ":", "const0_rtx", ";", "}", ""], "natrual_language": ["Expand", "instruction", "ICODE", "as", "part", "of", "a", "built-in", "function", "sequence", ".", "Use", "the", "first", "NOPS", "elements", "of", "OPS", "as", "the", "instruction", "'s", "operands", ".", "HAS_TARGET_P", "is", "true", "if", "operand", "0", "is", "a", "target", ";", "it", "is", "false", "if", "the", "instruction", "has", "no", "target", ".", "Return", "the", "target", "rtx", "if", "HAS_TARGET_P", ",", "otherwise", "return", "const0_rtx", "."], "TS_V_token": ["mips", "\"invalid argument to built-in function\"", "0", "0"], "File": "mips4", "Func": "mips_expand_builtin_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32669, "Length": 68} {"ground_truth": ["", "void", "mips_expand_conditional_move", "(", "rtx", "*", "operands", ")", "{", "rtx", "cond", ";", "enum", "rtx_code", "code", "=", "GET_CODE", "(", "operands", "[", "1", "]", ")", ";", "rtx", "op0", "=", "XEXP", "(", "operands", "[", "1", "]", ",", "0", ")", ";", "rtx", "op1", "=", "XEXP", "(", "operands", "[", "1", "]", ",", "1", ")", ";", "mips_emit_compare", "(", "&", "code", ",", "&", "op0", ",", "&", "op1", ",", "true", ")", ";", "cond", "=", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ",", "op1", ")", ";", "if", "(", "ISA_HAS_SEL", "&&", "INTEGRAL_MODE_P", "(", "GET_MODE", "(", "operands", "[", "2", "]", ")", ")", "&&", "register_operand", "(", "operands", "[", "2", "]", ",", "VOIDmode", ")", "&&", "register_operand", "(", "operands", "[", "3", "]", ",", "VOIDmode", ")", ")", "{", "machine_mode", "mode", "=", "GET_MODE", "(", "operands", "[", "0", "]", ")", ";", "rtx", "temp", "=", "gen_reg_rtx", "(", "mode", ")", ";", "rtx", "temp2", "=", "gen_reg_rtx", "(", "mode", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "temp", ",", "gen_rtx_IF_THEN_ELSE", "(", "mode", ",", "cond", ",", "operands", "[", "2", "]", ",", "const0_rtx", ")", ")", ")", ";", "cond", "=", "gen_rtx_fmt_ee", "(", "(", "code", "==", "EQ", ")", "?", "NE", ":", "EQ", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ",", "op1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "temp2", ",", "gen_rtx_IF_THEN_ELSE", "(", "mode", ",", "cond", ",", "operands", "[", "3", "]", ",", "const0_rtx", ")", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "operands", "[", "0", "]", ",", "gen_rtx_IOR", "(", "mode", ",", "temp", ",", "temp2", ")", ")", ")", ";", "}", "else", "{", "if", "(", "FLOAT_MODE_P", "(", "GET_MODE", "(", "operands", "[", "2", "]", ")", ")", "&&", "!", "ISA_HAS_SEL", ")", "{", "operands", "[", "2", "]", "=", "force_reg", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "operands", "[", "2", "]", ")", ";", "operands", "[", "3", "]", "=", "force_reg", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "operands", "[", "3", "]", ")", ";", "}", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "operands", "[", "0", "]", ",", "gen_rtx_IF_THEN_ELSE", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "cond", ",", "operands", "[", "2", "]", ",", "operands", "[", "3", "]", ")", ")", ")", ";", "}", "}", ""], "natrual_language": ["Perform", "the", "comparison", "in", "OPERANDS", "[", "1", "]", ".", "Move", "OPERANDS", "[", "2", "]", "into", "OPERANDS", "[", "0", "]", "if", "the", "condition", "holds", ",", "otherwise", "move", "OPERANDS", "[", "3", "]", "into", "OPERANDS", "[", "0", "]", "."], "TS_V_token": ["mips", "1", "1", "0", "1", "1", "2", "2", "3", "0", "2", "3", "0", "2", "2", "0", "2", "3", "0", "3", "0", "0", "2", "3"], "File": "mips4", "Func": "mips_expand_conditional_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32670, "Length": 337} {"ground_truth": ["", "bool", "mips_expand_ins_as_unaligned_store", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "width", ",", "HOST_WIDE_INT", "bitpos", ")", "{", "rtx", "left", ",", "right", ";", "machine_mode", "mode", ";", "if", "(", "!", "mips_get_unaligned_mem", "(", "dest", ",", "width", ",", "bitpos", ",", "&", "left", ",", "&", "right", ")", ")", "return", "false", ";", "mode", "=", "mode_for_size", "(", "width", ",", "MODE_INT", ",", "0", ")", ";", "src", "=", "gen_lowpart", "(", "mode", ",", "src", ")", ";", "if", "(", "mode", "==", "DImode", ")", "{", "emit_insn", "(", "gen_mov_sdl", "(", "dest", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_sdr", "(", "copy_rtx", "(", "dest", ")", ",", "copy_rtx", "(", "src", ")", ",", "right", ")", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_mov_swl", "(", "dest", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_swr", "(", "copy_rtx", "(", "dest", ")", ",", "copy_rtx", "(", "src", ")", ",", "right", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "use", "left/right", "stores", "to", "expand", "an", "``", "ins", "''", "pattern", ".", "DEST", ",", "WIDTH", ",", "BITPOS", "and", "SRC", "are", "the", "operands", "passed", "to", "the", "expander", ";", "the", "operation", "is", "the", "equivalent", "of", ":", "(", "set", "(", "zero_extract", "DEST", "WIDTH", "BITPOS", ")", "SRC", ")", "Return", "true", "on", "success", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_expand_ins_as_unaligned_store", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32671, "Length": 140} {"ground_truth": ["", "void", "mips_expand_vector_init", "(", "rtx", "target", ",", "rtx", "vals", ")", "{", "machine_mode", "vmode", "=", "GET_MODE", "(", "target", ")", ";", "machine_mode", "imode", "=", "GET_MODE_INNER", "(", "vmode", ")", ";", "unsigned", "i", ",", "nelt", "=", "GET_MODE_NUNITS", "(", "vmode", ")", ";", "unsigned", "nvar", "=", "0", ",", "one_var", "=", "-", "1u", ";", "bool", "all_same", "=", "true", ";", "rtx", "x", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "x", "=", "XVECEXP", "(", "vals", ",", "0", ",", "i", ")", ";", "if", "(", "!", "mips_constant_elt_p", "(", "x", ")", ")", "nvar", "++", ",", "one_var", "=", "i", ";", "if", "(", "i", ">", "0", "&&", "!", "rtx_equal_p", "(", "x", ",", "XVECEXP", "(", "vals", ",", "0", ",", "0", ")", ")", ")", "all_same", "=", "false", ";", "}", "if", "(", "nvar", "==", "0", ")", "{", "emit_move_insn", "(", "target", ",", "gen_rtx_CONST_VECTOR", "(", "vmode", ",", "XVEC", "(", "vals", ",", "0", ")", ")", ")", ";", "return", ";", "}", "if", "(", "nelt", "==", "2", ")", "{", "rtx", "op0", "=", "force_reg", "(", "imode", ",", "XVECEXP", "(", "vals", ",", "0", ",", "0", ")", ")", ";", "rtx", "op1", "=", "force_reg", "(", "imode", ",", "XVECEXP", "(", "vals", ",", "0", ",", "1", ")", ")", ";", "x", "=", "gen_rtx_VEC_CONCAT", "(", "vmode", ",", "op0", ",", "op1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "target", ",", "x", ")", ")", ";", "return", ";", "}", "gcc_assert", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ";", "if", "(", "all_same", ")", "{", "mips_expand_vi_broadcast", "(", "vmode", ",", "target", ",", "XVECEXP", "(", "vals", ",", "0", ",", "0", ")", ")", ";", "return", ";", "}", "if", "(", "nvar", "==", "1", "&&", "vmode", "==", "V4HImode", ")", "{", "mips_expand_vi_loongson_one_pinsrh", "(", "target", ",", "vals", ",", "one_var", ")", ";", "return", ";", "}", "mips_expand_vi_general", "(", "vmode", ",", "imode", ",", "nelt", ",", "nvar", ",", "target", ",", "vals", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "vector", "initialization", "."], "TS_V_token": ["mips", "0", "1u", "0", "0", "0", "0", "0", "0", "0", "2", "0", "0", "0", "1", "0", "0", "1"], "File": "mips4", "Func": "mips_expand_vector_init", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32672, "Length": 284} {"ground_truth": ["", "void", "mips_expand_vec_minmax", "(", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ",", "rtx", "(", "*", "cmp", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ",", "bool", "min_p", ")", "{", "machine_mode", "vmode", "=", "GET_MODE", "(", "target", ")", ";", "rtx", "tc", ",", "t0", ",", "t1", ",", "x", ";", "tc", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "t0", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "cmp", "(", "tc", ",", "op0", ",", "op1", ")", ")", ";", "x", "=", "gen_rtx_AND", "(", "vmode", ",", "tc", ",", "(", "min_p", "?", "op1", ":", "op0", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "t0", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_NOT", "(", "vmode", ",", "tc", ")", ";", "x", "=", "gen_rtx_AND", "(", "vmode", ",", "x", ",", "(", "min_p", "?", "op0", ":", "op1", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "t1", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_IOR", "(", "vmode", ",", "t0", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "target", ",", "x", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "vector", "minimum/maximum", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_expand_vec_minmax", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32673, "Length": 170} {"ground_truth": ["", "bool", "mips_expand_vec_perm_const", "(", "rtx", "operands", "[", "4", "]", ")", "{", "struct", "expand_vec_perm_d", "d", ";", "int", "i", ",", "nelt", ",", "which", ";", "unsigned", "char", "orig_perm", "[", "MAX_VECT_LEN", "]", ";", "rtx", "sel", ";", "bool", "ok", ";", "d", ".", "target", "=", "operands", "[", "0", "]", ";", "d", ".", "op0", "=", "operands", "[", "1", "]", ";", "d", ".", "op1", "=", "operands", "[", "2", "]", ";", "sel", "=", "operands", "[", "3", "]", ";", "d", ".", "vmode", "=", "GET_MODE", "(", "d", ".", "target", ")", ";", "gcc_assert", "(", "VECTOR_MODE_P", "(", "d", ".", "vmode", ")", ")", ";", "d", ".", "nelt", "=", "nelt", "=", "GET_MODE_NUNITS", "(", "d", ".", "vmode", ")", ";", "d", ".", "testing_p", "=", "false", ";", "for", "(", "i", "=", "which", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "rtx", "e", "=", "XVECEXP", "(", "sel", ",", "0", ",", "i", ")", ";", "int", "ei", "=", "INTVAL", "(", "e", ")", "&", "(", "2", "*", "nelt", "-", "1", ")", ";", "which", "|=", "(", "ei", "<", "nelt", "?", "1", ":", "2", ")", ";", "orig_perm", "[", "i", "]", "=", "ei", ";", "}", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "switch", "(", "which", ")", "{", "default", ":", "gcc_unreachable", "(", ")", ";", "case", "3", ":", "d", ".", "one_vector_p", "=", "false", ";", "if", "(", "!", "rtx_equal_p", "(", "d", ".", "op0", ",", "d", ".", "op1", ")", ")", "break", ";", "case", "2", ":", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "d", ".", "perm", "[", "i", "]", "&=", "nelt", "-", "1", ";", "d", ".", "op0", "=", "d", ".", "op1", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "case", "1", ":", "d", ".", "op1", "=", "d", ".", "op0", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "}", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "if", "(", "!", "ok", "&&", "which", "==", "3", ")", "{", "d", ".", "op0", "=", "operands", "[", "1", "]", ";", "d", ".", "op1", "=", "operands", "[", "2", "]", ";", "d", ".", "one_vector_p", "=", "false", ";", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "}", "return", "ok", ";", "}", ""], "natrual_language": ["Expand", "a", "vec_perm_const", "pattern", "."], "TS_V_token": ["mips", "4", "0", "1", "2", "3", "0", "0", "2", "1", "1", "2", "3", "2", "0", "1", "1", "3", "1", "2"], "File": "mips4", "Func": "mips_expand_vec_perm_const", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32674, "Length": 348} {"ground_truth": ["", "void", "mips_expand_vec_reduc", "(", "rtx", "target", ",", "rtx", "in", ",", "rtx", "(", "*", "gen", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ")", "{", "machine_mode", "vmode", "=", "GET_MODE", "(", "in", ")", ";", "unsigned", "char", "perm2", "[", "2", "]", ";", "rtx", "last", ",", "next", ",", "fold", ",", "x", ";", "bool", "ok", ";", "last", "=", "in", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "switch", "(", "vmode", ")", "{", "case", "V2SFmode", ":", "perm2", "[", "0", "]", "=", "1", ";", "perm2", "[", "1", "]", "=", "2", ";", "ok", "=", "mips_expand_vselect_vconcat", "(", "fold", ",", "last", ",", "last", ",", "perm2", ",", "2", ")", ";", "gcc_assert", "(", "ok", ")", ";", "break", ";", "case", "V2SImode", ":", "emit_insn", "(", "gen_loongson_punpckhwd", "(", "fold", ",", "last", ",", "last", ")", ")", ";", "break", ";", "case", "V4HImode", ":", "emit_insn", "(", "gen_loongson_punpckhwd_hi", "(", "fold", ",", "last", ",", "last", ")", ")", ";", "next", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "gen", "(", "next", ",", "last", ",", "fold", ")", ")", ";", "last", "=", "next", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "x", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "16", ")", ")", ";", "emit_insn", "(", "gen_vec_shr_v4hi", "(", "fold", ",", "last", ",", "x", ")", ")", ";", "break", ";", "case", "V8QImode", ":", "emit_insn", "(", "gen_loongson_punpckhwd_qi", "(", "fold", ",", "last", ",", "last", ")", ")", ";", "next", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "gen", "(", "next", ",", "last", ",", "fold", ")", ")", ";", "last", "=", "next", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "x", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "16", ")", ")", ";", "emit_insn", "(", "gen_vec_shr_v8qi", "(", "fold", ",", "last", ",", "x", ")", ")", ";", "next", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "gen", "(", "next", ",", "last", ",", "fold", ")", ")", ";", "last", "=", "next", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "x", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "8", ")", ")", ";", "emit_insn", "(", "gen_vec_shr_v8qi", "(", "fold", ",", "last", ",", "x", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "emit_insn", "(", "gen", "(", "target", ",", "last", ",", "fold", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "vector", "reduction", "."], "TS_V_token": ["mips", "2", "0", "1", "1", "2", "2", "16", "16", "8"], "File": "mips4", "Func": "mips_expand_vec_reduc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32675, "Length": 338} {"ground_truth": ["", "void", "mips_expand_vec_unpack", "(", "rtx", "operands", "[", "2", "]", ",", "bool", "unsigned_p", ",", "bool", "high_p", ")", "{", "machine_mode", "imode", "=", "GET_MODE", "(", "operands", "[", "1", "]", ")", ";", "rtx", "(", "*", "unpack", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "(", "*", "cmpgt", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "tmp", ",", "dest", ",", "zero", ";", "switch", "(", "imode", ")", "{", "case", "V8QImode", ":", "if", "(", "high_p", ")", "unpack", "=", "gen_loongson_punpckhbh", ";", "else", "unpack", "=", "gen_loongson_punpcklbh", ";", "cmpgt", "=", "gen_loongson_pcmpgtb", ";", "break", ";", "case", "V4HImode", ":", "if", "(", "high_p", ")", "unpack", "=", "gen_loongson_punpckhhw", ";", "else", "unpack", "=", "gen_loongson_punpcklhw", ";", "cmpgt", "=", "gen_loongson_pcmpgth", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "zero", "=", "force_reg", "(", "imode", ",", "CONST0_RTX", "(", "imode", ")", ")", ";", "if", "(", "unsigned_p", ")", "tmp", "=", "zero", ";", "else", "{", "tmp", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "cmpgt", "(", "tmp", ",", "zero", ",", "operands", "[", "1", "]", ")", ")", ";", "}", "dest", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "unpack", "(", "dest", ",", "operands", "[", "1", "]", ",", "tmp", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_lowpart", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "dest", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "an", "integral", "vector", "unpack", "operation", "."], "TS_V_token": ["mips", "2", "1", "1", "1", "0", "0"], "File": "mips4", "Func": "mips_expand_vec_unpack", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32676, "Length": 205} {"ground_truth": ["", "static", "void", "mips_expand_vi_broadcast", "(", "machine_mode", "vmode", ",", "rtx", "target", ",", "rtx", "elt", ")", "{", "struct", "expand_vec_perm_d", "d", ";", "rtx", "t1", ";", "bool", "ok", ";", "if", "(", "elt", "!=", "const0_rtx", ")", "elt", "=", "force_reg", "(", "GET_MODE_INNER", "(", "vmode", ")", ",", "elt", ")", ";", "if", "(", "REG_P", "(", "elt", ")", ")", "elt", "=", "gen_lowpart", "(", "DImode", ",", "elt", ")", ";", "t1", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "switch", "(", "vmode", ")", "{", "case", "V8QImode", ":", "emit_insn", "(", "gen_loongson_vec_init1_v8qi", "(", "t1", ",", "elt", ")", ")", ";", "break", ";", "case", "V4HImode", ":", "emit_insn", "(", "gen_loongson_vec_init1_v4hi", "(", "t1", ",", "elt", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "memset", "(", "&", "d", ",", "0", ",", "sizeof", "(", "d", ")", ")", ";", "d", ".", "target", "=", "target", ";", "d", ".", "op0", "=", "t1", ";", "d", ".", "op1", "=", "t1", ";", "d", ".", "vmode", "=", "vmode", ";", "d", ".", "nelt", "=", "GET_MODE_NUNITS", "(", "vmode", ")", ";", "d", ".", "one_vector_p", "=", "true", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "gcc_assert", "(", "ok", ")", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "expand", "via", "broadcast", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_expand_vi_broadcast", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32677, "Length": 173} {"ground_truth": ["", "static", "void", "mips_expand_vi_constant", "(", "machine_mode", "vmode", ",", "unsigned", "nelt", ",", "rtx", "target", ",", "rtx", "vals", ")", "{", "rtvec", "vec", "=", "shallow_copy_rtvec", "(", "XVEC", "(", "vals", ",", "0", ")", ")", ";", "unsigned", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "if", "(", "!", "mips_constant_elt_p", "(", "RTVEC_ELT", "(", "vec", ",", "i", ")", ")", ")", "RTVEC_ELT", "(", "vec", ",", "i", ")", "=", "const0_rtx", ";", "}", "emit_move_insn", "(", "target", ",", "gen_rtx_CONST_VECTOR", "(", "vmode", ",", "vec", ")", ")", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "replacing", "all", "of", "the", "non-constant", "elements", "of", "VALS", "with", "zeros", ",", "copy", "the", "constant", "vector", "to", "TARGET", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_expand_vi_constant", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32678, "Length": 83} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_bcast", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "elt", ";", "rtx", "t0", ",", "t1", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ")", "return", "false", ";", "if", "(", "d", "->", "vmode", "!=", "V8QImode", ")", "return", "false", ";", "if", "(", "!", "d", "->", "one_vector_p", ")", "return", "false", ";", "elt", "=", "d", "->", "perm", "[", "0", "]", ";", "for", "(", "i", "=", "1", ";", "i", "<", "8", ";", "++", "i", ")", "if", "(", "d", "->", "perm", "[", "i", "]", "!=", "elt", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "t0", "=", "gen_reg_rtx", "(", "V8QImode", ")", ";", "if", "(", "elt", "<", "4", ")", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op0", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op0", ")", ")", ";", "elt", "&=", "3", ";", "elt", "*=", "0x55", ";", "t1", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t1", ",", "gen_lowpart", "(", "V4HImode", ",", "t0", ")", ",", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "elt", ")", ")", ")", ")", ";", "emit_move_insn", "(", "d", "->", "target", ",", "gen_lowpart", "(", "V8QImode", ",", "t1", ")", ")", ";", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "broadcast", "patterns", "for", "the", "Loongson", "."], "TS_V_token": ["mips", "0", "1", "8", "4", "3", "0x55"], "File": "mips4", "Func": "mips_expand_vpc_loongson_bcast", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32679, "Length": 202} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_even_odd", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "odd", ",", "nelt", "=", "d", "->", "nelt", ";", "rtx", "t0", ",", "t1", ",", "t2", ",", "t3", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ")", "return", "false", ";", "if", "(", "nelt", "<", "4", ")", "return", "false", ";", "odd", "=", "d", "->", "perm", "[", "0", "]", ";", "if", "(", "odd", ">", "1", ")", "return", "false", ";", "for", "(", "i", "=", "1", ";", "i", "<", "nelt", ";", "++", "i", ")", "if", "(", "d", "->", "perm", "[", "i", "]", "!=", "i", "*", "2", "+", "odd", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "t0", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "switch", "(", "d", "->", "vmode", ")", "{", "case", "V4HImode", ":", "emit_insn", "(", "gen_loongson_punpckhhw", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklhw", "(", "t1", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "if", "(", "odd", ")", "emit_insn", "(", "gen_loongson_punpckhhw", "(", "d", "->", "target", ",", "t1", ",", "t0", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpcklhw", "(", "d", "->", "target", ",", "t1", ",", "t0", ")", ")", ";", "break", ";", "case", "V8QImode", ":", "t2", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "t3", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t1", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t2", ",", "t1", ",", "t0", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t3", ",", "t1", ",", "t0", ")", ")", ";", "if", "(", "odd", ")", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "d", "->", "target", ",", "t3", ",", "t2", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "d", "->", "target", ",", "t3", ",", "t2", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "patterns", "for", "even-odd", "extraction", "."], "TS_V_token": ["mips", "4", "0", "1", "1", "2"], "File": "mips4", "Func": "mips_expand_vpc_loongson_even_odd", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32680, "Length": 327} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_pshufh", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "mask", ";", "rtx", "rmask", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ")", "return", "false", ";", "if", "(", "d", "->", "vmode", "!=", "V4HImode", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "for", "(", "i", "=", "mask", "=", "0", ";", "i", "<", "4", ";", "i", "++", ")", "mask", "|=", "(", "d", "->", "perm", "[", "i", "]", "&", "3", ")", "<<", "(", "i", "*", "2", ")", ";", "rmask", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "mask", ")", ")", ";", "if", "(", "d", "->", "one_vector_p", ")", "emit_insn", "(", "gen_loongson_pshufh", "(", "d", "->", "target", ",", "d", "->", "op0", ",", "rmask", ")", ")", ";", "else", "{", "rtx", "t0", ",", "t1", ",", "x", ",", "merge", ",", "rmerge", "[", "4", "]", ";", "t0", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t1", ",", "d", "->", "op1", ",", "rmask", ")", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t0", ",", "d", "->", "op0", ",", "rmask", ")", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "4", ";", "++", "i", ")", "rmerge", "[", "i", "]", "=", "(", "d", "->", "perm", "[", "i", "]", "&", "4", "?", "constm1_rtx", ":", "const0_rtx", ")", ";", "merge", "=", "gen_rtx_CONST_VECTOR", "(", "V4HImode", ",", "gen_rtvec_v", "(", "4", ",", "rmerge", ")", ")", ";", "merge", "=", "force_reg", "(", "V4HImode", ",", "merge", ")", ";", "x", "=", "gen_rtx_AND", "(", "V4HImode", ",", "merge", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "t1", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_NOT", "(", "V4HImode", ",", "merge", ")", ";", "x", "=", "gen_rtx_AND", "(", "V4HImode", ",", "x", ",", "t0", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "t0", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_IOR", "(", "V4HImode", ",", "t0", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "d", "->", "target", ",", "x", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "patterns", "for", "the", "Loongson", "PSHUFH", "instruction", "."], "TS_V_token": ["mips", "0", "4", "3", "2", "4", "0", "4", "4", "4"], "File": "mips4", "Func": "mips_expand_vpc_loongson_pshufh", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32681, "Length": 317} {"ground_truth": ["", "static", "bool", "mips_expand_vselect", "(", "rtx", "target", ",", "rtx", "op0", ",", "const", "unsigned", "char", "*", "perm", ",", "unsigned", "nelt", ")", "{", "rtx", "rperm", "[", "MAX_VECT_LEN", "]", ",", "x", ";", "rtx_insn", "*", "insn", ";", "unsigned", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "rperm", "[", "i", "]", "=", "GEN_INT", "(", "perm", "[", "i", "]", ")", ";", "x", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec_v", "(", "nelt", ",", "rperm", ")", ")", ";", "x", "=", "gen_rtx_VEC_SELECT", "(", "GET_MODE", "(", "target", ")", ",", "op0", ",", "x", ")", ";", "x", "=", "gen_rtx_SET", "(", "VOIDmode", ",", "target", ",", "x", ")", ";", "insn", "=", "emit_insn", "(", "x", ")", ";", "if", "(", "recog_memoized", "(", "insn", ")", "<", "0", ")", "{", "remove_insn", "(", "insn", ")", ";", "return", "false", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Construct", "(", "set", "target", "(", "vec_select", "op0", "(", "parallel", "perm", ")", ")", ")", "and", "return", "true", "if", "that", "'s", "a", "valid", "instruction", "in", "the", "active", "ISA", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_expand_vselect", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32682, "Length": 130} {"ground_truth": ["", "static", "bool", "mips_expand_vselect_vconcat", "(", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ",", "const", "unsigned", "char", "*", "perm", ",", "unsigned", "nelt", ")", "{", "machine_mode", "v2mode", ";", "rtx", "x", ";", "v2mode", "=", "GET_MODE_2XWIDER_MODE", "(", "GET_MODE", "(", "op0", ")", ")", ";", "x", "=", "gen_rtx_VEC_CONCAT", "(", "v2mode", ",", "op0", ",", "op1", ")", ";", "return", "mips_expand_vselect", "(", "target", ",", "x", ",", "perm", ",", "nelt", ")", ";", "}", ""], "natrual_language": ["Similar", ",", "but", "generate", "a", "vec_concat", "from", "op0", "and", "op1", "as", "well", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_expand_vselect_vconcat", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32683, "Length": 63} {"ground_truth": ["", "static", "void", "mips_file_start", "(", "void", ")", "{", "default_file_start", "(", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.section .mdebug.%s\\n\\t.previous\\n\"", ",", "mips_mdebug_abi_name", "(", ")", ")", ";", "if", "(", "mips_abi", "==", "ABI_EABI", "||", "mips_abi", "==", "ABI_O64", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.section .gcc_compiled_long%d\\n\"", "\"\\t.previous\\n\"", ",", "TARGET_LONG64", "?", "64", ":", "32", ")", ";", "if", "(", "HAVE_AS_NAN", "||", "mips_nan", "!=", "MIPS_IEEE_754_DEFAULT", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.nan\\t%s\\n\"", ",", "mips_nan", "==", "MIPS_IEEE_754_2008", "?", "\"2008\"", ":", "\"legacy\"", ")", ";", "if", "(", "TARGET_NO_FLOAT", ")", "fputs", "(", "\"\\t.gnu_attribute 4, 0\\n\"", ",", "asm_out_file", ")", ";", ";", "else", "if", "(", "!", "TARGET_HARD_FLOAT_ABI", ")", "fputs", "(", "\"\\t.module\\tsoftfloat\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "!", "TARGET_DOUBLE_FLOAT", ")", "fputs", "(", "\"\\t.module\\tsinglefloat\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "TARGET_FLOATXX", ")", "fputs", "(", "\"\\t.module\\tfp=xx\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "TARGET_FLOAT64", ")", "fputs", "(", "\"\\t.module\\tfp=64\\n\"", ",", "asm_out_file", ")", ";", "else", "fputs", "(", "\"\\t.module\\tfp=32\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_ODD_SPREG", ")", "fputs", "(", "\"\\t.module\\toddspreg\\n\"", ",", "asm_out_file", ")", ";", "else", "fputs", "(", "\"\\t.module\\tnooddspreg\\n\"", ",", "asm_out_file", ")", ";", "{", "int", "attr", ";", "if", "(", "TARGET_NO_FLOAT", ")", "attr", "=", "0", ";", "else", "if", "(", "!", "TARGET_HARD_FLOAT_ABI", ")", "attr", "=", "3", ";", "else", "if", "(", "!", "TARGET_DOUBLE_FLOAT", ")", "attr", "=", "2", ";", "else", "if", "(", "TARGET_FLOATXX", ")", "attr", "=", "5", ";", "else", "if", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", "&&", "TARGET_ODD_SPREG", ")", "attr", "=", "6", ";", "else", "if", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", ")", "attr", "=", "7", ";", "else", "attr", "=", "1", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.gnu_attribute 4, %d\\n\"", ",", "attr", ")", ";", "}", "if", "(", "TARGET_ABICALLS", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"\\t.abicalls\\n\"", ")", ";", "if", "(", "TARGET_ABICALLS_PIC0", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.option\\tpic0\\n\"", ")", ";", "}", "if", "(", "flag_verbose_asm", ")", "fprintf", "(", "asm_out_file", ",", "\"\\n%s -G value = %d, Arch = %s, ISA = %d\\n\"", ",", "ASM_COMMENT_START", ",", "mips_small_data_threshold", ",", "mips_arch_info", "->", "name", ",", "mips_isa", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FILE_START", "."], "TS_V_token": ["mips", "\"\\t.section .mdebug.%s\\n\\t.previous\\n\"", "\"\\t.section .gcc_compiled_long%d\\n\"", "\"\\t.previous\\n\"", "64", "32", "\"\\t.nan\\t%s\\n\"", "\"2008\"", "\"legacy\"", "\"\\t.gnu_attribute 4, 0\\n\"", "\"\\t.module\\tsoftfloat\\n\"", "\"\\t.module\\tsinglefloat\\n\"", "\"\\t.module\\tfp=xx\\n\"", "\"\\t.module\\tfp=64\\n\"", "\"\\t.module\\tfp=32\\n\"", "\"\\t.module\\toddspreg\\n\"", "\"\\t.module\\tnooddspreg\\n\"", "0", "3", "2", "5", "6", "7", "1", "\"\\t.gnu_attribute 4, %d\\n\"", "\"\\t.abicalls\\n\"", "\"\\t.option\\tpic0\\n\"", "\"\\n%s -G value = %d, Arch = %s, ISA = %d\\n\""], "File": "mips4", "Func": "mips_file_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32684, "Length": 288} {"ground_truth": ["", "void", "mips_final_prescan_insn", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "opvec", ",", "int", "noperands", ")", "{", "if", "(", "mips_need_noat_wrapper_p", "(", "insn", ",", "opvec", ",", "noperands", ")", ")", "mips_push_asm_switch", "(", "&", "mips_noat", ")", ";", "}", ""], "natrual_language": ["Implement", "FINAL_PRESCAN_INSN", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_final_prescan_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32685, "Length": 33} {"ground_truth": ["", "static", "bool", "mips_find_gp_ref", "(", "bool", "*", "cache", ",", "bool", "(", "*", "pred", ")", "(", "rtx_insn", "*", ")", ")", "{", "rtx_insn", "*", "insn", ";", "if", "(", "!", "*", "cache", ")", "{", "push_topmost_sequence", "(", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "if", "(", "USEFUL_INSN_P", "(", "insn", ")", "&&", "pred", "(", "insn", ")", ")", "{", "*", "cache", "=", "true", ";", "break", ";", "}", "pop_topmost_sequence", "(", ")", ";", "}", "return", "*", "cache", ";", "}", ""], "natrual_language": ["Return", "true", "if", "predicate", "PRED", "is", "true", "for", "at", "least", "one", "instruction", ".", "Cache", "the", "result", "in", "*", "CACHE", ",", "and", "assume", "that", "the", "result", "is", "true", "if", "*", "CACHE", "is", "already", "true", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_find_gp_ref", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32686, "Length": 82} {"ground_truth": ["", "static", "rtx", "mips_frame_set", "(", "rtx", "mem", ",", "rtx", "reg", ")", "{", "rtx", "set", ";", "set", "=", "gen_rtx_SET", "(", "VOIDmode", ",", "mem", ",", "reg", ")", ";", "RTX_FRAME_RELATED_P", "(", "set", ")", "=", "1", ";", "return", "set", ";", "}", ""], "natrual_language": ["Return", "a", "frame-related", "rtx", "that", "stores", "register", "REGNO", "at", "(", "SP", "+", "OFFSET", ")", ".", "The", "expression", "should", "only", "be", "used", "to", "store", "single", "registers", "."], "TS_V_token": ["mips", "1"], "File": "mips4", "Func": "mips_frame_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32687, "Length": 36} {"ground_truth": ["", "static", "void", "mips_function_arg_advance", "(", "cumulative_args_t", "cum_v", ",", "machine_mode", "mode", ",", "const_tree", "type", ",", "bool", "named", ")", "{", "CUMULATIVE_ARGS", "*", "cum", "=", "get_cumulative_args", "(", "cum_v", ")", ";", "struct", "mips_arg_info", "info", ";", "mips_get_arg_info", "(", "&", "info", ",", "cum", ",", "mode", ",", "type", ",", "named", ")", ";", "if", "(", "!", "info", ".", "fpr_p", ")", "cum", "->", "gp_reg_found", "=", "true", ";", "if", "(", "cum", "->", "arg_number", "<", "2", "&&", "info", ".", "fpr_p", ")", "cum", "->", "fp_code", "+=", "(", "mode", "==", "SFmode", "?", "1", ":", "2", ")", "<<", "(", "cum", "->", "arg_number", "*", "2", ")", ";", "if", "(", "mips_abi", "!=", "ABI_EABI", "||", "!", "info", ".", "fpr_p", ")", "cum", "->", "num_gprs", "=", "info", ".", "reg_offset", "+", "info", ".", "reg_words", ";", "else", "if", "(", "info", ".", "reg_words", ">", "0", ")", "cum", "->", "num_fprs", "+=", "MAX_FPRS_PER_FMT", ";", "if", "(", "info", ".", "stack_words", ">", "0", ")", "cum", "->", "stack_words", "=", "info", ".", "stack_offset", "+", "info", ".", "stack_words", ";", "cum", "->", "arg_number", "++", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_ARG_ADVANCE", "."], "TS_V_token": ["mips", "2", "1", "2", "2", "0", "0"], "File": "mips4", "Func": "mips_function_arg_advance", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32688, "Length": 155} {"ground_truth": ["", "static", "rtx", "mips_function_value_1", "(", "const_tree", "valtype", ",", "const_tree", "fn_decl_or_type", ",", "machine_mode", "mode", ")", "{", "if", "(", "valtype", ")", "{", "tree", "fields", "[", "2", "]", ";", "int", "unsigned_p", ";", "const_tree", "func", ";", "if", "(", "fn_decl_or_type", "&&", "DECL_P", "(", "fn_decl_or_type", ")", ")", "func", "=", "fn_decl_or_type", ";", "else", "func", "=", "NULL", ";", "mode", "=", "TYPE_MODE", "(", "valtype", ")", ";", "unsigned_p", "=", "TYPE_UNSIGNED", "(", "valtype", ")", ";", "mode", "=", "promote_function_mode", "(", "valtype", ",", "mode", ",", "&", "unsigned_p", ",", "func", ",", "1", ")", ";", "switch", "(", "mips_fpr_return_fields", "(", "valtype", ",", "fields", ")", ")", "{", "case", "1", ":", "return", "mips_return_fpr_single", "(", "mode", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "0", "]", ")", ")", ")", ";", "case", "2", ":", "return", "mips_return_fpr_pair", "(", "mode", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "0", "]", ")", ")", ",", "int_byte_position", "(", "fields", "[", "0", "]", ")", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "1", "]", ")", ")", ",", "int_byte_position", "(", "fields", "[", "1", "]", ")", ")", ";", "}", "if", "(", "mips_return_in_msb", "(", "valtype", ")", ")", "{", "HOST_WIDE_INT", "size", "=", "int_size_in_bytes", "(", "valtype", ")", ";", "if", "(", "size", "%", "UNITS_PER_WORD", "!=", "0", ")", "{", "size", "+=", "UNITS_PER_WORD", "-", "size", "%", "UNITS_PER_WORD", ";", "mode", "=", "mode_for_size", "(", "size", "*", "BITS_PER_UNIT", ",", "MODE_INT", ",", "0", ")", ";", "}", "}", "if", "(", "mips_abi", "!=", "ABI_EABI", "&&", "!", "FLOAT_TYPE_P", "(", "valtype", ")", ")", "return", "gen_rtx_REG", "(", "mode", ",", "GP_RETURN", ")", ";", "}", "if", "(", "!", "TARGET_MIPS16", ")", "{", "if", "(", "mode", "==", "TFmode", ")", "return", "mips_return_fpr_pair", "(", "mode", ",", "DImode", ",", "0", ",", "DImode", ",", "GET_MODE_SIZE", "(", "mode", ")", "/", "2", ")", ";", "if", "(", "mips_return_mode_in_fpr_p", "(", "mode", ")", ")", "{", "if", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", ")", "return", "mips_return_fpr_pair", "(", "mode", ",", "GET_MODE_INNER", "(", "mode", ")", ",", "0", ",", "GET_MODE_INNER", "(", "mode", ")", ",", "GET_MODE_SIZE", "(", "mode", ")", "/", "2", ")", ";", "else", "return", "gen_rtx_REG", "(", "mode", ",", "FP_RETURN", ")", ";", "}", "}", "return", "gen_rtx_REG", "(", "mode", ",", "GP_RETURN", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_VALUE", "and", "TARGET_LIBCALL_VALUE", ".", "For", "normal", "calls", ",", "VALTYPE", "is", "the", "return", "type", "and", "MODE", "is", "VOIDmode", ".", "For", "libcalls", ",", "VALTYPE", "is", "null", "and", "MODE", "is", "the", "mode", "of", "the", "return", "value", "."], "TS_V_token": ["mips", "2", "1", "1", "0", "2", "0", "0", "1", "1", "0", "0", "0", "2", "0", "2"], "File": "mips4", "Func": "mips_function_value_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32689, "Length": 319} {"ground_truth": ["", "static", "machine_mode", "mips_get_reg_raw_mode", "(", "int", "regno", ")", "{", "if", "(", "TARGET_FLOATXX", "&&", "FP_REG_P", "(", "regno", ")", ")", "return", "DFmode", ";", "return", "default_get_reg_raw_mode", "(", "regno", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_GET_RAW_RESULT_MODE", "and", "TARGET_GET_RAW_ARG_MODE", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_get_reg_raw_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32690, "Length": 27} {"ground_truth": ["", "static", "unsigned", "int", "mips_global_pointer", "(", "void", ")", "{", "unsigned", "int", "regno", ";", "if", "(", "!", "TARGET_USE_GOT", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "mips_cfun_has_inflexible_gp_ref_p", "(", ")", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "TARGET_ABSOLUTE_JUMPS", "&&", "!", "mips_cfun_has_flexible_gp_ref_p", "(", ")", ")", "return", "INVALID_REGNUM", ";", "if", "(", "TARGET_CALL_SAVED_GP", "&&", "crtl", "->", "is_leaf", ")", "for", "(", "regno", "=", "GP_REG_FIRST", ";", "regno", "<=", "GP_REG_LAST", ";", "regno", "++", ")", "if", "(", "!", "df_regs_ever_live_p", "(", "regno", ")", "&&", "call_really_used_regs", "[", "regno", "]", "&&", "!", "fixed_regs", "[", "regno", "]", "&&", "regno", "!=", "PIC_FUNCTION_ADDR_REGNUM", ")", "return", "regno", ";", "return", "GLOBAL_POINTER_REGNUM", ";", "}", ""], "natrual_language": ["Return", "the", "register", "that", "should", "be", "used", "as", "the", "global", "pointer", "within", "this", "function", ".", "Return", "0", "if", "the", "function", "does", "n't", "need", "a", "global", "pointer", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_global_pointer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32691, "Length": 92} {"ground_truth": ["", "machine_mode", "mips_hard_regno_caller_save_mode", "(", "unsigned", "int", "regno", ",", "unsigned", "int", "nregs", ",", "machine_mode", "mode", ")", "{", "if", "(", "mode", "==", "VOIDmode", ")", "return", "choose_hard_reg_mode", "(", "regno", ",", "nregs", ",", "false", ")", ";", "else", "return", "mode", ";", "}", ""], "natrual_language": ["Implement", "HARD_REGNO_CALLER_SAVE_MODE", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_hard_regno_caller_save_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32692, "Length": 36} {"ground_truth": ["", "static", "bool", "mips_hard_regno_mode_ok_p", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "unsigned", "int", "size", ";", "enum", "mode_class", "mclass", ";", "if", "(", "mode", "==", "CCV2mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "2", "==", "0", ")", ";", "if", "(", "mode", "==", "CCV4mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "4", "==", "0", ")", ";", "if", "(", "mode", "==", "CCmode", ")", "return", "ISA_HAS_8CC", "?", "ST_REG_P", "(", "regno", ")", ":", "regno", "==", "FPSW_REGNUM", ";", "size", "=", "GET_MODE_SIZE", "(", "mode", ")", ";", "mclass", "=", "GET_MODE_CLASS", "(", "mode", ")", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "mode", "!=", "CCFmode", ")", "return", "(", "(", "regno", "-", "GP_REG_FIRST", ")", "&", "1", ")", "==", "0", "||", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "(", "(", "(", "regno", "-", "FP_REG_FIRST", ")", "%", "MAX_FPRS_PER_FMT", ")", "==", "0", "||", "(", "MIN_FPRS_PER_FMT", "==", "1", "&&", "size", "<=", "UNITS_PER_FPREG", ")", ")", ")", "{", "if", "(", "TARGET_O32_FP64A_ABI", "&&", "size", "<=", "4", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", "return", "false", ";", "if", "(", "mode", "==", "CCFmode", ")", "return", "!", "(", "TARGET_FLOATXX", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", ";", "if", "(", "TARGET_LOONGSON_VECTORS", "&&", "(", "mode", "==", "V2SImode", "||", "mode", "==", "V4HImode", "||", "mode", "==", "V8QImode", "||", "mode", "==", "DImode", ")", ")", "return", "true", ";", "if", "(", "mclass", "==", "MODE_FLOAT", "||", "mclass", "==", "MODE_COMPLEX_FLOAT", "||", "mclass", "==", "MODE_VECTOR_FLOAT", ")", "return", "size", "<=", "UNITS_PER_FPVALUE", ";", "if", "(", "mclass", "==", "MODE_INT", ")", "return", "size", ">=", "MIN_UNITS_PER_WORD", "&&", "size", "<=", "UNITS_PER_FPREG", ";", "}", "if", "(", "ACC_REG_P", "(", "regno", ")", "&&", "!", "VECTOR_MODE_P", "(", "mode", ")", "&&", "(", "INTEGRAL_MODE_P", "(", "mode", ")", "||", "ALL_FIXED_POINT_MODE_P", "(", "mode", ")", ")", ")", "{", "if", "(", "MD_REG_P", "(", "regno", ")", ")", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", ")", "return", "regno", "==", "(", "size", "<=", "UNITS_PER_WORD", "?", "LO_REGNUM", ":", "MD_REG_FIRST", ")", ";", "}", "else", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", ")", "return", "true", ";", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", "&&", "(", "(", "regno", "-", "DSP_ACC_REG_FIRST", ")", "&", "1", ")", "==", "0", ")", "return", "true", ";", "}", "}", "if", "(", "ALL_COP_REG_P", "(", "regno", ")", ")", "return", "mclass", "==", "MODE_INT", "&&", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "regno", "==", "GOT_VERSION_REGNUM", ")", "return", "mode", "==", "SImode", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "register", "REGNO", "can", "store", "a", "value", "of", "mode", "MODE", ".", "The", "result", "of", "this", "function", "is", "cached", "in", "mips_hard_regno_mode_ok", "."], "TS_V_token": ["mips", "2", "0", "4", "0", "1", "0", "0", "1", "4", "1", "0", "1", "0", "2", "2", "1", "0"], "File": "mips4", "Func": "mips_hard_regno_mode_ok_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32693, "Length": 386} {"ground_truth": ["", "unsigned", "int", "mips_hard_regno_nregs", "(", "int", "regno", ",", "machine_mode", "mode", ")", "{", "if", "(", "ST_REG_P", "(", "regno", ")", ")", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "3", ")", "/", "4", ";", "if", "(", "FP_REG_P", "(", "regno", ")", ")", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_FPREG", "-", "1", ")", "/", "UNITS_PER_FPREG", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "}", ""], "natrual_language": ["Implement", "HARD_REGNO_NREGS", "."], "TS_V_token": ["mips", "3", "4", "1", "1"], "File": "mips4", "Func": "mips_hard_regno_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32694, "Length": 66} {"ground_truth": ["", "int", "mips_idiv_insns", "(", "void", ")", "{", "int", "count", ";", "count", "=", "1", ";", "if", "(", "TARGET_CHECK_ZERO_DIV", ")", "{", "if", "(", "GENERATE_DIVIDE_TRAPS", ")", "count", "++", ";", "else", "count", "+=", "2", ";", "}", "if", "(", "TARGET_FIX_R4000", "||", "TARGET_FIX_R4400", ")", "count", "++", ";", "return", "count", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "for", "an", "integer", "division", "."], "TS_V_token": ["mips", "1", "2"], "File": "mips4", "Func": "mips_idiv_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32695, "Length": 44} {"ground_truth": ["", "static", "void", "mips_init_builtins", "(", "void", ")", "{", "const", "struct", "mips_builtin_description", "*", "d", ";", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips_builtins", ")", ";", "i", "++", ")", "{", "d", "=", "&", "mips_builtins", "[", "i", "]", ";", "if", "(", "d", "->", "avail", "(", ")", ")", "mips_builtin_decls", "[", "i", "]", "=", "add_builtin_function", "(", "d", "->", "name", ",", "mips_build_function_type", "(", "d", "->", "function_type", ")", ",", "i", ",", "BUILT_IN_MD", ",", "NULL", ",", "NULL", ")", ";", "}", "}", ""], "natrual_language": ["Init", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_INIT_BUILTIN", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_init_builtins", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32696, "Length": 79} {"ground_truth": ["", "static", "bool", "mips_interrupt_extra_call_saved_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "(", "ISA_HAS_HILO", "||", "TARGET_DSP", ")", "&&", "MD_REG_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "TARGET_DSP", "&&", "DSP_ACC_REG_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "!", "cfun", "->", "machine", "->", "use_shadow_register_set_p", ")", "{", "if", "(", "regno", "==", "GP_REG_FIRST", ")", "return", "false", ";", "if", "(", "KERNEL_REG_P", "(", "regno", ")", ")", "return", "false", ";", "if", "(", "regno", "==", "STACK_POINTER_REGNUM", ")", "return", "false", ";", "return", "call_really_used_regs", "[", "regno", "]", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "REGNO", "is", "a", "register", "that", "is", "ordinarily", "call-clobbered", "but", "must", "nevertheless", "be", "preserved", "by", "an", "interrupt", "handler", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_interrupt_extra_call_saved_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32697, "Length": 91} {"ground_truth": ["", "static", "int", "mips_issue_rate", "(", "void", ")", "{", "switch", "(", "mips_tune", ")", "{", "case", "PROCESSOR_74KC", ":", "case", "PROCESSOR_74KF2_1", ":", "case", "PROCESSOR_74KF1_1", ":", "case", "PROCESSOR_74KF3_2", ":", "case", "PROCESSOR_R10000", ":", "return", "4", ";", "case", "PROCESSOR_20KC", ":", "case", "PROCESSOR_R4130", ":", "case", "PROCESSOR_R5400", ":", "case", "PROCESSOR_R5500", ":", "case", "PROCESSOR_R5900", ":", "case", "PROCESSOR_R7000", ":", "case", "PROCESSOR_R9000", ":", "case", "PROCESSOR_OCTEON", ":", "case", "PROCESSOR_OCTEON2", ":", "case", "PROCESSOR_OCTEON3", ":", "return", "2", ";", "case", "PROCESSOR_SB1", ":", "case", "PROCESSOR_SB1A", ":", "return", "3", ";", "case", "PROCESSOR_LOONGSON_2E", ":", "case", "PROCESSOR_LOONGSON_2F", ":", "case", "PROCESSOR_LOONGSON_3A", ":", "case", "PROCESSOR_P5600", ":", "return", "4", ";", "case", "PROCESSOR_XLP", ":", "return", "(", "reload_completed", "?", "4", ":", "3", ")", ";", "default", ":", "return", "1", ";", "}", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "that", "can", "be", "issued", "per", "cycle", "."], "TS_V_token": ["mips", "4", "2", "3", "4", "4", "3", "1"], "File": "mips4", "Func": "mips_issue_rate", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32698, "Length": 106} {"ground_truth": ["", "static", "void", "mips_legitimize_const_move", "(", "machine_mode", "mode", ",", "rtx", "dest", ",", "rtx", "src", ")", "{", "rtx", "base", ",", "offset", ";", "if", "(", "splittable_const_int_operand", "(", "src", ",", "mode", ")", ")", "{", "mips_move_integer", "(", "dest", ",", "dest", ",", "INTVAL", "(", "src", ")", ")", ";", "return", ";", "}", "if", "(", "mips_split_symbol", "(", "dest", ",", "src", ",", "MAX_MACHINE_MODE", ",", "&", "src", ")", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "dest", ",", "src", ")", ")", ";", "return", ";", "}", "if", "(", "mips_tls_symbol_p", "(", "src", ")", ")", "{", "mips_emit_move", "(", "dest", ",", "mips_legitimize_tls_address", "(", "src", ")", ")", ";", "return", ";", "}", "split_const", "(", "src", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "offset", "!=", "const0_rtx", "&&", "(", "targetm", ".", "cannot_force_const_mem", "(", "mode", ",", "src", ")", "||", "(", "!", "TARGET_MIPS16", "&&", "can_create_pseudo_p", "(", ")", ")", ")", ")", "{", "base", "=", "mips_force_temporary", "(", "dest", ",", "base", ")", ";", "mips_emit_move", "(", "dest", ",", "mips_add_offset", "(", "NULL", ",", "base", ",", "INTVAL", "(", "offset", ")", ")", ")", ";", "return", ";", "}", "src", "=", "force_const_mem", "(", "mode", ",", "src", ")", ";", "mips_split_symbol", "(", "dest", ",", "XEXP", "(", "src", ",", "0", ")", ",", "mode", ",", "&", "XEXP", "(", "src", ",", "0", ")", ")", ";", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "}", ""], "natrual_language": ["Subroutine", "of", "mips_legitimize_move", ".", "Move", "constant", "SRC", "into", "register", "DEST", "given", "that", "SRC", "satisfies", "immediate_operand", "but", "does", "n't", "satisfy", "move_operand", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_legitimize_const_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32699, "Length": 201} {"ground_truth": ["", "bool", "mips_legitimize_move", "(", "machine_mode", "mode", ",", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "!", "register_operand", "(", "dest", ",", "mode", ")", "&&", "!", "reg_or_0_operand", "(", "src", ",", "mode", ")", ")", "{", "mips_emit_move", "(", "dest", ",", "force_reg", "(", "mode", ",", "src", ")", ")", ";", "return", "true", ";", "}", "if", "(", "CONSTANT_P", "(", "src", ")", "&&", "!", "move_operand", "(", "src", ",", "mode", ")", ")", "{", "mips_legitimize_const_move", "(", "mode", ",", "dest", ",", "src", ")", ";", "set_unique_reg_note", "(", "get_last_insn", "(", ")", ",", "REG_EQUAL", ",", "copy_rtx", "(", "src", ")", ")", ";", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["If", "(", "set", "DEST", "SRC", ")", "is", "not", "a", "valid", "instruction", ",", "emit", "an", "equivalent", "sequence", "that", "is", "valid", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_legitimize_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32700, "Length": 95} {"ground_truth": ["", "static", "rtx", "mips_legitimize_tls_address", "(", "rtx", "loc", ")", "{", "rtx", "dest", ",", "insn", ",", "v0", ",", "tp", ",", "tmp1", ",", "tmp2", ",", "eqv", ",", "offset", ";", "enum", "tls_model", "model", ";", "model", "=", "SYMBOL_REF_TLS_MODEL", "(", "loc", ")", ";", "if", "(", "!", "TARGET_ABICALLS", ")", "model", "=", "TLS_MODEL_LOCAL_EXEC", ";", "switch", "(", "model", ")", "{", "case", "TLS_MODEL_GLOBAL_DYNAMIC", ":", "v0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_RETURN", ")", ";", "insn", "=", "mips_call_tls_get_addr", "(", "loc", ",", "SYMBOL_TLSGD", ",", "v0", ")", ";", "dest", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_libcall_block", "(", "insn", ",", "dest", ",", "v0", ",", "loc", ")", ";", "break", ";", "case", "TLS_MODEL_LOCAL_DYNAMIC", ":", "v0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_RETURN", ")", ";", "insn", "=", "mips_call_tls_get_addr", "(", "loc", ",", "SYMBOL_TLSLDM", ",", "v0", ")", ";", "tmp1", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "eqv", "=", "gen_rtx_UNSPEC", "(", "Pmode", ",", "gen_rtvec", "(", "1", ",", "const0_rtx", ")", ",", "UNSPEC_TLS_LDM", ")", ";", "emit_libcall_block", "(", "insn", ",", "tmp1", ",", "v0", ",", "eqv", ")", ";", "offset", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_DTPREL", ")", ";", "if", "(", "mips_split_p", "[", "SYMBOL_DTPREL", "]", ")", "{", "tmp2", "=", "mips_unspec_offset_high", "(", "NULL", ",", "tmp1", ",", "loc", ",", "SYMBOL_DTPREL", ")", ";", "dest", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "tmp2", ",", "offset", ")", ";", "}", "else", "dest", "=", "expand_binop", "(", "Pmode", ",", "add_optab", ",", "tmp1", ",", "offset", ",", "0", ",", "0", ",", "OPTAB_DIRECT", ")", ";", "break", ";", "case", "TLS_MODEL_INITIAL_EXEC", ":", "tp", "=", "mips_get_tp", "(", ")", ";", "tmp1", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "tmp2", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_GOTTPREL", ")", ";", "if", "(", "Pmode", "==", "DImode", ")", "emit_insn", "(", "gen_load_gotdi", "(", "tmp1", ",", "pic_offset_table_rtx", ",", "tmp2", ")", ")", ";", "else", "emit_insn", "(", "gen_load_gotsi", "(", "tmp1", ",", "pic_offset_table_rtx", ",", "tmp2", ")", ")", ";", "dest", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "dest", ",", "tmp1", ",", "tp", ")", ")", ";", "break", ";", "case", "TLS_MODEL_LOCAL_EXEC", ":", "tmp1", "=", "mips_get_tp", "(", ")", ";", "offset", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_TPREL", ")", ";", "if", "(", "mips_split_p", "[", "SYMBOL_TPREL", "]", ")", "{", "tmp2", "=", "mips_unspec_offset_high", "(", "NULL", ",", "tmp1", ",", "loc", ",", "SYMBOL_TPREL", ")", ";", "dest", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "tmp2", ",", "offset", ")", ";", "}", "else", "dest", "=", "expand_binop", "(", "Pmode", ",", "add_optab", ",", "tmp1", ",", "offset", ",", "0", ",", "0", ",", "OPTAB_DIRECT", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "dest", ";", "}", ""], "natrual_language": ["Generate", "the", "code", "to", "access", "LOC", ",", "a", "thread", "local", "SYMBOL_REF", ".", "The", "return", "value", "will", "be", "a", "valid", "address", "and", "move_operand", "(", "either", "a", "REG", "or", "a", "LO_SUM", ")", "."], "TS_V_token": ["mips", "1", "0", "0", "0", "0"], "File": "mips4", "Func": "mips_legitimize_tls_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32701, "Length": 375} {"ground_truth": ["", "static", "bool", "mips_load_call_address", "(", "enum", "mips_call_type", "type", ",", "rtx", "dest", ",", "rtx", "addr", ")", "{", "if", "(", "TARGET_EXPLICIT_RELOCS", "&&", "!", "(", "type", "==", "MIPS_CALL_SIBCALL", "&&", "TARGET_CALL_SAVED_GP", ")", "&&", "mips_ok_for_lazy_binding_p", "(", "addr", ")", ")", "{", "addr", "=", "mips_got_load", "(", "dest", ",", "addr", ",", "SYMBOL_GOTOFF_CALL", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "dest", ",", "addr", ")", ")", ";", "return", "true", ";", "}", "else", "{", "mips_emit_move", "(", "dest", ",", "addr", ")", ";", "return", "false", ";", "}", "}", ""], "natrual_language": ["Load", "function", "address", "ADDR", "into", "register", "DEST", ".", "SIBCALL_P", "is", "true", "if", "the", "address", "is", "needed", "for", "a", "sibling", "call", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_load_call_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32702, "Length": 75} {"ground_truth": ["", "static", "bool", "mips_lx_address_p", "(", "rtx", "addr", ",", "machine_mode", "mode", ")", "{", "if", "(", "GET_CODE", "(", "addr", ")", "!=", "PLUS", "||", "!", "REG_P", "(", "XEXP", "(", "addr", ",", "0", ")", ")", "||", "!", "REG_P", "(", "XEXP", "(", "addr", ",", "1", ")", ")", ")", "return", "false", ";", "if", "(", "ISA_HAS_LBX", "&&", "mode", "==", "QImode", ")", "return", "true", ";", "if", "(", "ISA_HAS_LHX", "&&", "mode", "==", "HImode", ")", "return", "true", ";", "if", "(", "ISA_HAS_LWX", "&&", "mode", "==", "SImode", ")", "return", "true", ";", "if", "(", "ISA_HAS_LDX", "&&", "mode", "==", "DImode", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "ADDR", "matches", "the", "pattern", "for", "the", "L", "{", "B", ",", "H", ",", "W", ",", "D", "}", "{", ",", "U", "}", "X", "load", "indexed", "address", "instruction", ".", "Note", "that", "such", "addresses", "are", "not", "considered", "legitimate", "in", "the", "TARGET_LEGITIMATE_ADDRESS_P", "sense", ",", "because", "their", "use", "is", "so", "restricted", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips4", "Func": "mips_lx_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32703, "Length": 93} {"ground_truth": ["", "static", "unsigned", "int", "mips_machine_reorg2", "(", "void", ")", "{", "mips_reorg_process_insns", "(", ")", ";", "if", "(", "!", "TARGET_MIPS16", "&&", "TARGET_EXPLICIT_RELOCS", "&&", "TUNE_MIPS4130", "&&", "TARGET_VR4130_ALIGN", ")", "vr4130_align_insns", "(", ")", ";", "if", "(", "mips_expand_ghost_gp_insns", "(", ")", ")", "mips_reorg_process_insns", "(", ")", ";", "mips16_split_long_branches", "(", ")", ";", "return", "0", ";", "}", ""], "natrual_language": ["We", "use", "a", "machine", "specific", "pass", "to", "do", "a", "second", "machine", "dependent", "reorg", "pass", "after", "delay", "branch", "scheduling", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_machine_reorg2", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32704, "Length": 45} {"ground_truth": ["", "bool", "mips_modes_tieable_p", "(", "machine_mode", "mode1", ",", "machine_mode", "mode2", ")", "{", "return", "(", "mode1", "==", "mode2", "||", "(", "!", "mips_mode_ok_for_mov_fmt_p", "(", "mode1", ")", "&&", "!", "mips_mode_ok_for_mov_fmt_p", "(", "mode2", ")", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "MODES_TIEABLE_P", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_modes_tieable_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32705, "Length": 32} {"ground_truth": ["", "static", "bool", "mips_mode_ok_for_mov_fmt_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "CCFmode", ":", "case", "SFmode", ":", "return", "TARGET_HARD_FLOAT", ";", "case", "DFmode", ":", "return", "TARGET_HARD_FLOAT", "&&", "TARGET_DOUBLE_FLOAT", ";", "case", "V2SFmode", ":", "return", "TARGET_HARD_FLOAT", "&&", "TARGET_PAIRED_SINGLE_FLOAT", ";", "default", ":", "return", "false", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "moves", "in", "mode", "MODE", "can", "use", "the", "FPU", "'s", "mov.fmt", "instruction", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_mode_ok_for_mov_fmt_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32706, "Length": 45} {"ground_truth": ["", "static", "int", "mips_mode_rep_extended", "(", "machine_mode", "mode", ",", "machine_mode", "mode_rep", ")", "{", "if", "(", "TARGET_64BIT", "&&", "mode", "==", "SImode", "&&", "mode_rep", "==", "DImode", ")", "return", "SIGN_EXTEND", ";", "return", "UNKNOWN", ";", "}", ""], "natrual_language": ["Implement", "TARGET_MODE_REP_EXTENDED", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_mode_rep_extended", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32707, "Length": 30} {"ground_truth": ["", "void", "mips_move_integer", "(", "rtx", "temp", ",", "rtx", "dest", ",", "unsigned", "HOST_WIDE_INT", "value", ")", "{", "struct", "mips_integer_op", "codes", "[", "MIPS_MAX_INTEGER_OPS", "]", ";", "machine_mode", "mode", ";", "unsigned", "int", "i", ",", "num_ops", ";", "rtx", "x", ";", "mode", "=", "GET_MODE", "(", "dest", ")", ";", "num_ops", "=", "mips_build_integer", "(", "codes", ",", "value", ")", ";", "x", "=", "GEN_INT", "(", "codes", "[", "0", "]", ".", "value", ")", ";", "for", "(", "i", "=", "1", ";", "i", "<", "num_ops", ";", "i", "++", ")", "{", "if", "(", "!", "can_create_pseudo_p", "(", ")", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "temp", ",", "x", ")", ")", ";", "x", "=", "temp", ";", "}", "else", "x", "=", "force_reg", "(", "mode", ",", "x", ")", ";", "x", "=", "gen_rtx_fmt_ee", "(", "codes", "[", "i", "]", ".", "code", ",", "mode", ",", "x", ",", "GEN_INT", "(", "codes", "[", "i", "]", ".", "value", ")", ")", ";", "}", "emit_insn", "(", "gen_rtx_SET", "(", "VOIDmode", ",", "dest", ",", "x", ")", ")", ";", "}", ""], "natrual_language": ["Move", "VALUE", "into", "register", "DEST", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips4", "Func": "mips_move_integer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32708, "Length": 150} {"ground_truth": ["", "static", "int", "mips_multipass_dfa_lookahead", "(", "void", ")", "{", "if", "(", "TUNE_SB1", ")", "return", "4", ";", "if", "(", "TUNE_LOONGSON_2EF", "||", "TUNE_LOONGSON_3A", ")", "return", "4", ";", "if", "(", "TUNE_OCTEON", ")", "return", "2", ";", "if", "(", "TUNE_P5600", ")", "return", "4", ";", "return", "0", ";", "}", ""], "natrual_language": ["Implements", "TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD", ".", "This", "should", "be", "as", "wide", "as", "the", "scheduling", "freedom", "in", "the", "DFA", "."], "TS_V_token": ["mips", "4", "4", "2", "4", "0"], "File": "mips4", "Func": "mips_multipass_dfa_lookahead", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32709, "Length": 41} {"ground_truth": ["", "static", "struct", "mips_multi_member", "*", "mips_multi_add", "(", "void", ")", "{", "mips_multi_member", "empty", ";", "return", "mips_multi_members", ".", "safe_push", "(", "empty", ")", ";", "}", ""], "natrual_language": ["Add", "a", "new", ",", "uninitialized", "member", "to", "the", "current", "multi-insn", "sequence", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_multi_add", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32710, "Length": 21} {"ground_truth": ["", "static", "bool", "mips_near_type_p", "(", "const_tree", "type", ")", "{", "return", "lookup_attribute", "(", "\"near\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", ";", "}", ""], "natrual_language": ["Predicates", "to", "test", "for", "presence", "of", "``", "near", "''", "and", "``", "far", "''", "/", "''", "long_call", "''", "attributes", "on", "the", "given", "TYPE", "."], "TS_V_token": ["mips", "\"near\""], "File": "mips4", "Func": "mips_near_type_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32711, "Length": 22} {"ground_truth": ["", "static", "void", "mips_output_args_xfer", "(", "int", "fp_code", ",", "char", "direction", ")", "{", "unsigned", "int", "gparg", ",", "fparg", ",", "f", ";", "CUMULATIVE_ARGS", "cum", ";", "gcc_assert", "(", "TARGET_OLDABI", ")", ";", "mips_init_cumulative_args", "(", "&", "cum", ",", "NULL", ")", ";", "for", "(", "f", "=", "(", "unsigned", "int", ")", "fp_code", ";", "f", "!=", "0", ";", "f", ">>=", "2", ")", "{", "machine_mode", "mode", ";", "struct", "mips_arg_info", "info", ";", "if", "(", "(", "f", "&", "3", ")", "==", "1", ")", "mode", "=", "SFmode", ";", "else", "if", "(", "(", "f", "&", "3", ")", "==", "2", ")", "mode", "=", "DFmode", ";", "else", "gcc_unreachable", "(", ")", ";", "mips_get_arg_info", "(", "&", "info", ",", "&", "cum", ",", "mode", ",", "NULL", ",", "true", ")", ";", "gparg", "=", "mips_arg_regno", "(", "&", "info", ",", "false", ")", ";", "fparg", "=", "mips_arg_regno", "(", "&", "info", ",", "true", ")", ";", "if", "(", "mode", "==", "SFmode", ")", "mips_output_32bit_xfer", "(", "direction", ",", "gparg", ",", "fparg", ")", ";", "else", "mips_output_64bit_xfer", "(", "direction", ",", "gparg", ",", "fparg", ")", ";", "mips_function_arg_advance", "(", "pack_cumulative_args", "(", "&", "cum", ")", ",", "mode", ",", "NULL", ",", "true", ")", ";", "}", "}", ""], "natrual_language": ["Write", "out", "code", "to", "move", "floating-point", "arguments", "into", "or", "out", "of", "general", "registers", ".", "FP_CODE", "is", "the", "code", "describing", "which", "arguments", "are", "present", "(", "see", "the", "comment", "above", "the", "definition", "of", "CUMULATIVE_ARGS", "in", "mips.h", ")", ".", "DIRECTION", "is", "as", "for", "mips_output_32bit_xfer", "."], "TS_V_token": ["mips", "0", "2", "3", "1", "3", "2"], "File": "mips4", "Func": "mips_output_args_xfer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32712, "Length": 172} {"ground_truth": ["", "mips_output_ascii", "(", "STREAM", ",", "STRING", ",", "LEN", ")", "{", "\\", "const", "char", "*", "p", "=", "STRING", ";", "\\", "int", "size", "=", "strlen", "(", "p", ")", "+", "1", ";", "\\", "rdata_section", "(", ")", ";", "\\", "assemble_string", "(", "p", ",", "size", ")", ";", "\\", "}", ""], "natrual_language": ["Output", "an", "ASCII", "string", ",", "in", "a", "space-saving", "way", ".", "PREFIX", "is", "the", "string", "that", "should", "be", "written", "before", "the", "opening", "quote", ",", "such", "as", "``", "\\t.ascii\\t", "''", "for", "real", "string", "data", "or", "``", "\\t", "#", "``", "for", "a", "comment", "."], "TS_V_token": ["mips", "1"], "File": "mips4", "Func": "mips_output_ascii", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32713, "Length": 43} {"ground_truth": ["", "const", "char", "*", "mips_output_conditional_branch", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ",", "const", "char", "*", "branch_if_true", ",", "const", "char", "*", "branch_if_false", ")", "{", "unsigned", "int", "length", ";", "rtx", "taken", ";", "gcc_assert", "(", "LABEL_P", "(", "operands", "[", "0", "]", ")", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", "<=", "8", ")", "{", "mips_branch_likely", "=", "(", "final_sequence", "&&", "INSN_ANNULLED_BRANCH_P", "(", "insn", ")", ")", ";", "return", "branch_if_true", ";", "}", "mips_branch_likely", "=", "false", ";", "rtx_code_label", "*", "not_taken", "=", "gen_label_rtx", "(", ")", ";", "taken", "=", "operands", "[", "0", "]", ";", "operands", "[", "0", "]", "=", "not_taken", ";", "output_asm_insn", "(", "branch_if_false", ",", "operands", ")", ";", "if", "(", "final_sequence", ")", "{", "if", "(", "!", "INSN_ANNULLED_BRANCH_P", "(", "insn", ")", ")", "{", "final_scan_insn", "(", "final_sequence", "->", "insn", "(", "1", ")", ",", "asm_out_file", ",", "optimize", ",", "1", ",", "NULL", ")", ";", "final_sequence", "->", "insn", "(", "1", ")", "->", "set_deleted", "(", ")", ";", "}", "else", "output_asm_insn", "(", "\"nop\"", ",", "0", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\n\"", ")", ";", "}", "if", "(", "TARGET_ABSOLUTE_JUMPS", ")", "output_asm_insn", "(", "MIPS_ABSOLUTE_JUMP", "(", "\"j\\t%0%/\"", ")", ",", "&", "taken", ")", ";", "else", "{", "mips_output_load_label", "(", "taken", ")", ";", "output_asm_insn", "(", "\"jr\\t%@%]%/\"", ",", "0", ")", ";", "}", "if", "(", "final_sequence", ")", "{", "if", "(", "INSN_ANNULLED_BRANCH_P", "(", "insn", ")", ")", "{", "final_scan_insn", "(", "final_sequence", "->", "insn", "(", "1", ")", ",", "asm_out_file", ",", "optimize", ",", "1", ",", "NULL", ")", ";", "final_sequence", "->", "insn", "(", "1", ")", "->", "set_deleted", "(", ")", ";", "}", "else", "output_asm_insn", "(", "\"nop\"", ",", "0", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\n\"", ")", ";", "}", "targetm", ".", "asm_out", ".", "internal_label", "(", "asm_out_file", ",", "\"L\"", ",", "CODE_LABEL_NUMBER", "(", "not_taken", ")", ")", ";", "return", "\"\"", ";", "}", ""], "natrual_language": ["Output", "assembly", "instructions", "to", "peform", "a", "conditional", "branch", ".", "INSN", "is", "the", "branch", "instruction", ".", "OPERANDS", "[", "0", "]", "is", "the", "condition", ".", "OPERANDS", "[", "1", "]", "is", "the", "target", "of", "the", "branch", ".", "OPERANDS", "[", "2", "]", "is", "the", "target", "of", "the", "first", "operand", "to", "the", "condition", ".", "If", "TWO_OPERANDS_P", "is", "nonzero", "the", "comparison", "takes", "two", "operands", ";", "OPERANDS", "[", "3", "]", "will", "be", "the", "second", "operand", ".", "If", "INVERTED_P", "is", "nonzero", "we", "are", "to", "branch", "if", "the", "condition", "does", "not", "hold", ".", "If", "FLOAT_P", "is", "nonzero", "this", "is", "a", "floating-point", "comparison", ".", "LENGTH", "is", "the", "length", "(", "in", "bytes", ")", "of", "the", "sequence", "we", "are", "to", "generate", ".", "That", "tells", "us", "whether", "to", "generate", "a", "simple", "conditional", "branch", ",", "or", "a", "reversed", "conditional", "branch", "around", "a", "`", "jr", "'", "instruction", "."], "TS_V_token": ["mips", "0", "8", "0", "0", "1", "1", "1", "\"nop\"", "0", "\"\\n\"", "\"j\\t%0%/\"", "\"jr\\t%@%]%/\"", "0", "1", "1", "1", "\"nop\"", "0", "\"\\n\"", "\"L\"", "\"\""], "File": "mips4", "Func": "mips_output_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32714, "Length": 273} {"ground_truth": ["", "static", "void", "mips_output_function_prologue", "(", "FILE", "*", "file", ",", "HOST_WIDE_INT", "size", "ATTRIBUTE_UNUSED", ")", "{", "const", "char", "*", "fnname", ";", "if", "(", "TARGET_MIPS16", "&&", "TARGET_HARD_FLOAT_ABI", "&&", "crtl", "->", "args", ".", "info", ".", "fp_code", "!=", "0", ")", "mips16_build_function_stub", "(", ")", ";", "fnname", "=", "XSTR", "(", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ",", "0", ")", ";", "mips_start_function_definition", "(", "fnname", ",", "TARGET_MIPS16", ")", ";", "if", "(", "!", "flag_inhibit_size_directive", ")", "{", "const", "struct", "mips_frame_info", "*", "frame", ";", "frame", "=", "&", "cfun", "->", "machine", "->", "frame", ";", "fprintf", "(", "file", ",", "\"\\t.frame\\t%s,\"", "HOST_WIDE_INT_PRINT_DEC", "\",%s\\t\\t\"", "\"# vars= \"", "HOST_WIDE_INT_PRINT_DEC", "\", regs= %d/%d\"", "\", args= \"", "HOST_WIDE_INT_PRINT_DEC", "\", gp= \"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "reg_names", "[", "frame_pointer_needed", "?", "HARD_FRAME_POINTER_REGNUM", ":", "STACK_POINTER_REGNUM", "]", ",", "(", "frame_pointer_needed", "?", "frame", "->", "total_size", "-", "frame", "->", "hard_frame_pointer_offset", ":", "frame", "->", "total_size", ")", ",", "reg_names", "[", "RETURN_ADDR_REGNUM", "]", ",", "frame", "->", "var_size", ",", "frame", "->", "num_gp", ",", "frame", "->", "num_fp", ",", "frame", "->", "args_size", ",", "frame", "->", "cprestore_size", ")", ";", "fprintf", "(", "file", ",", "\"\\t.mask\\t0x%08x,\"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "frame", "->", "mask", ",", "frame", "->", "gp_save_offset", ")", ";", "fprintf", "(", "file", ",", "\"\\t.fmask\\t0x%08x,\"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "frame", "->", "fmask", ",", "frame", "->", "fp_save_offset", ")", ";", "}", "if", "(", "mips_must_initialize_gp_p", "(", ")", "&&", "mips_current_loadgp_style", "(", ")", "==", "LOADGP_OLDABI", ")", "{", "if", "(", "TARGET_MIPS16", ")", "{", "output_asm_insn", "(", "\"li\\t$2,%%hi(_gp_disp)\"", ",", "0", ")", ";", "output_asm_insn", "(", "\"addiu\\t$3,$pc,%%lo(_gp_disp)\"", ",", "0", ")", ";", "output_asm_insn", "(", "\"sll\\t$2,16\"", ",", "0", ")", ";", "output_asm_insn", "(", "\"addu\\t$2,$3\"", ",", "0", ")", ";", "}", "else", "{", "mips_push_asm_switch", "(", "&", "mips_noreorder", ")", ";", "output_asm_insn", "(", "\".cpload\\t%^\"", ",", "0", ")", ";", "if", "(", "!", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "mips_pop_asm_switch", "(", "&", "mips_noreorder", ")", ";", "else", "mips_push_asm_switch", "(", "&", "mips_nomacro", ")", ";", "}", "}", "else", "if", "(", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "{", "mips_push_asm_switch", "(", "&", "mips_noreorder", ")", ";", "mips_push_asm_switch", "(", "&", "mips_nomacro", ")", ";", "}", "mips_output_cplocal", "(", ")", ";", "}", ""], "natrual_language": ["Set", "up", "the", "stack", "and", "frame", "(", "if", "desired", ")", "for", "the", "function", "."], "TS_V_token": ["mips", "0", "0", "0", "\"\\t.frame\\t%s,\"", "\",%s\\t\\t\"", "\"# vars= \"", "\", regs= %d/%d\"", "\", args= \"", "\", gp= \"", "\"\\n\"", "\"\\t.mask\\t0x%08x,\"", "\"\\n\"", "\"\\t.fmask\\t0x%08x,\"", "\"\\n\"", "\"li\\t$2,%%hi(_gp_disp)\"", "0", "\"addiu\\t$3,$pc,%%lo(_gp_disp)\"", "0", "\"sll\\t$2,16\"", "0", "\"addu\\t$2,$3\"", "0", "\".cpload\\t%^\"", "0"], "File": "mips4", "Func": "mips_output_function_prologue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32715, "Length": 299} {"ground_truth": ["", "static", "void", "mips_output_mi_thunk", "(", "FILE", "*", "file", ",", "tree", "thunk_fndecl", "ATTRIBUTE_UNUSED", ",", "HOST_WIDE_INT", "delta", ",", "HOST_WIDE_INT", "vcall_offset", ",", "tree", "function", ")", "{", "rtx", "this_rtx", ",", "temp1", ",", "temp2", ",", "fnaddr", ";", "rtx_insn", "*", "insn", ";", "bool", "use_sibcall_p", ";", "reload_completed", "=", "1", ";", "emit_note", "(", "NOTE_INSN_PROLOGUE_END", ")", ";", "fnaddr", "=", "XEXP", "(", "DECL_RTL", "(", "function", ")", ",", "0", ")", ";", "use_sibcall_p", "=", "(", "mips_function_ok_for_sibcall", "(", "function", ",", "NULL", ")", "&&", "const_call_insn_operand", "(", "fnaddr", ",", "Pmode", ")", ")", ";", "if", "(", "!", "use_sibcall_p", "&&", "(", "mips_got_symbol_type_p", "(", "mips_classify_symbol", "(", "fnaddr", ",", "SYMBOL_CONTEXT_LEA", ")", ")", ")", ")", "{", "cfun", "->", "machine", "->", "global_pointer", "=", "TARGET_CALL_SAVED_GP", "?", "15", ":", "GLOBAL_POINTER_REGNUM", ";", "cfun", "->", "machine", "->", "must_initialize_gp_p", "=", "true", ";", "SET_REGNO", "(", "pic_offset_table_rtx", ",", "cfun", "->", "machine", "->", "global_pointer", ")", ";", "mips_emit_loadgp", "(", ")", ";", "}", "temp1", "=", "gen_rtx_REG", "(", "Pmode", ",", "2", ")", ";", "temp2", "=", "gen_rtx_REG", "(", "Pmode", ",", "3", ")", ";", "if", "(", "aggregate_value_p", "(", "TREE_TYPE", "(", "TREE_TYPE", "(", "function", ")", ")", ",", "function", ")", ")", "this_rtx", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", "+", "1", ")", ";", "else", "this_rtx", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "delta", "!=", "0", ")", "{", "rtx", "offset", "=", "GEN_INT", "(", "delta", ")", ";", "if", "(", "!", "SMALL_OPERAND", "(", "delta", ")", ")", "{", "mips_emit_move", "(", "temp1", ",", "offset", ")", ";", "offset", "=", "temp1", ";", "}", "emit_insn", "(", "gen_add3_insn", "(", "this_rtx", ",", "this_rtx", ",", "offset", ")", ")", ";", "}", "if", "(", "vcall_offset", "!=", "0", ")", "{", "rtx", "addr", ";", "mips_emit_move", "(", "temp1", ",", "gen_rtx_MEM", "(", "Pmode", ",", "this_rtx", ")", ")", ";", "addr", "=", "mips_add_offset", "(", "temp2", ",", "temp1", ",", "vcall_offset", ")", ";", "mips_emit_move", "(", "temp1", ",", "gen_rtx_MEM", "(", "Pmode", ",", "addr", ")", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "this_rtx", ",", "this_rtx", ",", "temp1", ")", ")", ";", "}", "if", "(", "use_sibcall_p", ")", "{", "insn", "=", "emit_call_insn", "(", "gen_sibcall_internal", "(", "fnaddr", ",", "const0_rtx", ")", ")", ";", "SIBLING_CALL_P", "(", "insn", ")", "=", "1", ";", "}", "else", "{", "if", "(", "TARGET_USE_PIC_FN_ADDR_REG", "&&", "!", "TARGET_MIPS16", "&&", "!", "mips_dangerous_for_la25_p", "(", "fnaddr", ")", ")", "temp1", "=", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "mips_load_call_address", "(", "MIPS_CALL_SIBCALL", ",", "temp1", ",", "fnaddr", ")", ";", "if", "(", "TARGET_USE_PIC_FN_ADDR_REG", "&&", "REGNO", "(", "temp1", ")", "!=", "PIC_FUNCTION_ADDR_REGNUM", ")", "mips_emit_move", "(", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ",", "temp1", ")", ";", "emit_jump_insn", "(", "gen_indirect_jump", "(", "temp1", ")", ")", ";", "}", "insn", "=", "get_insns", "(", ")", ";", "split_all_insns_noflow", "(", ")", ";", "mips16_lay_out_constants", "(", "true", ")", ";", "shorten_branches", "(", "insn", ")", ";", "final_start_function", "(", "insn", ",", "file", ",", "1", ")", ";", "final", "(", "insn", ",", "file", ",", "1", ")", ";", "final_end_function", "(", ")", ";", "reload_completed", "=", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_OUTPUT_MI_THUNK", ".", "Generate", "rtl", "rather", "than", "asm", "text", "in", "order", "to", "avoid", "duplicating", "too", "much", "logic", "from", "elsewhere", "."], "TS_V_token": ["mips", "1", "0", "15", "2", "3", "1", "0", "0", "1", "1", "1", "0"], "File": "mips4", "Func": "mips_output_mi_thunk", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32716, "Length": 429} {"ground_truth": ["", "const", "char", "*", "mips_output_order_conditional_branch", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ",", "bool", "inverted_p", ")", "{", "const", "char", "*", "branch", "[", "2", "]", ";", "switch", "(", "GET_CODE", "(", "operands", "[", "1", "]", ")", ")", "{", "case", "LEU", ":", "inverted_p", "=", "!", "inverted_p", ";", "case", "GTU", ":", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"bne\"", ",", "\"%2,%.,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"beq\"", ",", "\"%2,%.,%0\"", ")", ";", "break", ";", "case", "LTU", ":", "inverted_p", "=", "!", "inverted_p", ";", "case", "GEU", ":", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"beq\"", ",", "\"%.,%.,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"bne\"", ",", "\"%.,%.,%0\"", ")", ";", "break", ";", "default", ":", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"b%C1z\"", ",", "\"%2,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"b%N1z\"", ",", "\"%2,%0\"", ")", ";", "break", ";", "}", "return", "mips_output_conditional_branch", "(", "insn", ",", "operands", ",", "branch", "[", "1", "]", ",", "branch", "[", "0", "]", ")", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "code", "for", "INSN", ",", "which", "branches", "to", "OPERANDS", "[", "0", "]", "if", "some", "ordering", "condition", "is", "true", ".", "The", "condition", "is", "given", "by", "OPERANDS", "[", "1", "]", "if", "!", "INVERTED_P", ",", "otherwise", "it", "is", "the", "inverse", "of", "OPERANDS", "[", "1", "]", ".", "OPERANDS", "[", "2", "]", "is", "the", "comparison", "'s", "first", "operand", ";", "its", "second", "is", "always", "zero", "."], "TS_V_token": ["mips", "2", "1", "\"bne\"", "\"%2,%.,%0\"", "\"beq\"", "\"%2,%.,%0\"", "\"beq\"", "\"%.,%.,%0\"", "\"bne\"", "\"%.,%.,%0\"", "\"b%C1z\"", "\"%2,%0\"", "\"b%N1z\"", "\"%2,%0\"", "1", "0"], "File": "mips4", "Func": "mips_output_order_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32717, "Length": 161} {"ground_truth": ["", "const", "char", "*", "mips_output_probe_stack_range", "(", "rtx", "reg1", ",", "rtx", "reg2", ")", "{", "static", "int", "labelno", "=", "0", ";", "char", "loop_lab", "[", "32", "]", ",", "end_lab", "[", "32", "]", ",", "tmp", "[", "64", "]", ";", "rtx", "xops", "[", "2", "]", ";", "ASM_GENERATE_INTERNAL_LABEL", "(", "loop_lab", ",", "\"LPSRL\"", ",", "labelno", ")", ";", "ASM_GENERATE_INTERNAL_LABEL", "(", "end_lab", ",", "\"LPSRE\"", ",", "labelno", "++", ")", ";", "ASM_OUTPUT_INTERNAL_LABEL", "(", "asm_out_file", ",", "loop_lab", ")", ";", "xops", "[", "0", "]", "=", "reg1", ";", "xops", "[", "1", "]", "=", "reg2", ";", "strcpy", "(", "tmp", ",", "\"%(%"], "natrual_language": ["Probe", "a", "range", "of", "stack", "addresses", "from", "REG1", "to", "REG2", "inclusive", ".", "These", "are", "absolute", "addresses", "."], "TS_V_token": ["mips", "0", "32", "32", "64", "2", "\"LPSRL\"", "\"LPSRE\"", "0", "1", "\"%(%", "bool", "mips_pad_arg_upward", "(", "machine_mode", "mode", ",", "const_tree", "type", ")", "{", "if", "(", "!", "BYTES_BIG_ENDIAN", ")", "return", "true", ";", "if", "(", "type", "!=", "0", "?", "(", "INTEGRAL_TYPE_P", "(", "type", ")", "||", "POINTER_TYPE_P", "(", "type", ")", "||", "FIXED_POINT_TYPE_P", "(", "type", ")", ")", ":", "(", "SCALAR_INT_MODE_P", "(", "mode", ")", "||", "ALL_SCALAR_FIXED_POINT_MODE_P", "(", "mode", ")", ")", ")", "return", "false", ";", "if", "(", "mips_abi", "==", "ABI_O64", ")", "if", "(", "type", "!=", "0", "?", "FLOAT_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "return", "false", ";", "if", "(", "mips_abi", "!=", "ABI_EABI", ")", "return", "true", ";", "if", "(", "mode", "!=", "BLKmode", ")", "return", "GET_MODE_BITSIZE", "(", "mode", ")", ">=", "PARM_BOUNDARY", ";", "else", "return", "int_size_in_bytes", "(", "type", ")", ">=", "(", "PARM_BOUNDARY", "/", "BITS_PER_UNIT", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "FUNCTION_ARG_PADDING", "(", "MODE", ",", "TYPE", ")", "should", "return", "upward", "rather", "than", "downward", ".", "In", "other", "words", ",", "return", "true", "if", "the", "first", "byte", "of", "the", "stack", "slot", "has", "useful", "data", ",", "false", "if", "the", "last", "byte", "does", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_pad_arg_upward", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32719, "Length": 120} {"ground_truth": ["", "bool", "mips_pad_reg_upward", "(", "machine_mode", "mode", ",", "tree", "type", ")", "{", "if", "(", "type", "!=", "0", "?", "FLOAT_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "return", "!", "BYTES_BIG_ENDIAN", ";", "return", "mips_pad_arg_upward", "(", "mode", ",", "type", ")", ";", "}", ""], "natrual_language": ["Likewise", "BLOCK_REG_PADDING", "(", "MODE", ",", "TYPE", ",", "...", ")", ".", "Return", "!", "BYTES_BIG_ENDIAN", "if", "the", "least", "significant", "byte", "of", "the", "register", "has", "useful", "data", ".", "Return", "the", "opposite", "if", "the", "most", "significant", "byte", "does", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_pad_reg_upward", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32720, "Length": 41} {"ground_truth": ["", "static", "bool", "mips_pass_by_reference", "(", "cumulative_args_t", "cum", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ",", "const_tree", "type", ",", "bool", "named", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "mips_abi", "==", "ABI_EABI", ")", "{", "int", "size", ";", "if", "(", "mode", "==", "DImode", "||", "mode", "==", "DFmode", "||", "mode", "==", "DQmode", "||", "mode", "==", "UDQmode", "||", "mode", "==", "DAmode", "||", "mode", "==", "UDAmode", ")", "return", "0", ";", "size", "=", "type", "?", "int_size_in_bytes", "(", "type", ")", ":", "GET_MODE_SIZE", "(", "mode", ")", ";", "return", "size", "==", "-", "1", "||", "size", ">", "UNITS_PER_WORD", ";", "}", "else", "{", "return", "targetm", ".", "calls", ".", "must_pass_in_stack", "(", "mode", ",", "type", ")", ";", "}", "}", ""], "natrual_language": ["Return", "nonzero", "when", "an", "argument", "must", "be", "passed", "by", "reference", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips4", "Func": "mips_pass_by_reference", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32721, "Length": 99} {"ground_truth": ["", "static", "machine_mode", "mips_preferred_simd_mode", "(", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "TARGET_PAIRED_SINGLE_FLOAT", "&&", "mode", "==", "SFmode", ")", "return", "V2SFmode", ";", "return", "word_mode", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_PREFERRED_SIMD_MODE", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_preferred_simd_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32722, "Length": 24} {"ground_truth": ["", "static", "void", "mips_prepare_pch_save", "(", "void", ")", "{", "mips_set_compression_mode", "(", "0", ")", ";", "mips16_globals", "=", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_PREPARE_PCH_SAVE", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips4", "Func": "mips_prepare_pch_save", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32723, "Length": 17} {"ground_truth": ["", "static", "void", "mips_print_operand_address", "(", "FILE", "*", "file", ",", "rtx", "x", ")", "{", "struct", "mips_address_info", "addr", ";", "if", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "word_mode", ",", "true", ")", ")", "switch", "(", "addr", ".", "type", ")", "{", "case", "ADDRESS_REG", ":", "mips_print_operand", "(", "file", ",", "addr", ".", "offset", ",", "0", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "REGNO", "(", "addr", ".", "reg", ")", "]", ")", ";", "return", ";", "case", "ADDRESS_LO_SUM", ":", "mips_print_operand_reloc", "(", "file", ",", "addr", ".", "offset", ",", "SYMBOL_CONTEXT_MEM", ",", "mips_lo_relocs", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "REGNO", "(", "addr", ".", "reg", ")", "]", ")", ";", "return", ";", "case", "ADDRESS_CONST_INT", ":", "output_addr_const", "(", "file", ",", "x", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "GP_REG_FIRST", "]", ")", ";", "return", ";", "case", "ADDRESS_SYMBOLIC", ":", "output_addr_const", "(", "file", ",", "mips_strip_unspec_address", "(", "x", ")", ")", ";", "return", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_PRINT_OPERAND_ADDRESS", "."], "TS_V_token": ["mips", "0", "\"(%s)\"", "\"(%s)\"", "\"(%s)\""], "File": "mips4", "Func": "mips_print_operand_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32724, "Length": 150} {"ground_truth": ["", "static", "void", "mips_reorg_process_insns", "(", "void", ")", "{", "rtx_insn", "*", "insn", ",", "*", "last_insn", ",", "*", "subinsn", ",", "*", "next_insn", ";", "rtx", "lo_reg", ",", "delayed_reg", ";", "int", "hilo_delay", ";", "split_all_insns_noflow", "(", ")", ";", "cfun", "->", "machine", "->", "ignore_hazard_length_p", "=", "true", ";", "shorten_branches", "(", "get_insns", "(", ")", ")", ";", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "true", ";", "if", "(", "TARGET_MIPS16", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "if", "(", "crtl", "->", "profile", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "if", "(", "TARGET_FIX_VR4120", "||", "TARGET_FIX_RM7000", "||", "TARGET_FIX_24K", "||", "TARGET_MIPS5900", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "if", "(", "TARGET_FIX_VR4130", "&&", "!", "ISA_HAS_MACCHI", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "mips_offset_table", "htab", "(", "37", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", "!=", "0", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "if", "(", "USEFUL_INSN_P", "(", "subinsn", ")", ")", "{", "rtx", "body", "=", "PATTERN", "(", "insn", ")", ";", "int", "noperands", "=", "asm_noperands", "(", "body", ")", ";", "if", "(", "noperands", ">=", "0", ")", "{", "rtx", "*", "ops", "=", "XALLOCAVEC", "(", "rtx", ",", "noperands", ")", ";", "bool", "*", "used", "=", "XALLOCAVEC", "(", "bool", ",", "noperands", ")", ";", "const", "char", "*", "string", "=", "decode_asm_operands", "(", "body", ",", "ops", ",", "NULL", ",", "NULL", ",", "NULL", ",", "NULL", ")", ";", "get_referenced_operands", "(", "string", ",", "used", ",", "noperands", ")", ";", "for", "(", "int", "i", "=", "0", ";", "i", "<", "noperands", ";", "++", "i", ")", "if", "(", "used", "[", "i", "]", ")", "mips_record_lo_sums", "(", "ops", "[", "i", "]", ",", "&", "htab", ")", ";", "}", "else", "mips_record_lo_sums", "(", "PATTERN", "(", "subinsn", ")", ",", "&", "htab", ")", ";", "}", "last_insn", "=", "0", ";", "hilo_delay", "=", "2", ";", "delayed_reg", "=", "0", ";", "lo_reg", "=", "gen_rtx_REG", "(", "SImode", ",", "LO_REGNUM", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", "!=", "0", ";", "insn", "=", "next_insn", ")", "{", "next_insn", "=", "NEXT_INSN", "(", "insn", ")", ";", "if", "(", "USEFUL_INSN_P", "(", "insn", ")", ")", "{", "if", "(", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "SEQUENCE", ")", "{", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "if", "(", "INSN_P", "(", "subinsn", ")", ")", "{", "if", "(", "mips_orphaned_high_part_p", "(", "&", "htab", ",", "subinsn", ")", ")", "{", "PATTERN", "(", "subinsn", ")", "=", "gen_nop", "(", ")", ";", "INSN_CODE", "(", "subinsn", ")", "=", "CODE_FOR_nop", ";", "}", "mips_avoid_hazard", "(", "last_insn", ",", "subinsn", ",", "&", "hilo_delay", ",", "&", "delayed_reg", ",", "lo_reg", ")", ";", "}", "last_insn", "=", "insn", ";", "}", "else", "{", "if", "(", "mips_orphaned_high_part_p", "(", "&", "htab", ",", "insn", ")", ")", "delete_insn", "(", "insn", ")", ";", "else", "if", "(", "recog_memoized", "(", "insn", ")", "==", "CODE_FOR_r10k_cache_barrier", "&&", "last_insn", "&&", "JUMP_P", "(", "SEQ_BEGIN", "(", "last_insn", ")", ")", "&&", "INSN_ANNULLED_BRANCH_P", "(", "SEQ_BEGIN", "(", "last_insn", ")", ")", ")", "delete_insn", "(", "insn", ")", ";", "else", "{", "mips_avoid_hazard", "(", "last_insn", ",", "insn", ",", "&", "hilo_delay", ",", "&", "delayed_reg", ",", "lo_reg", ")", ";", "last_insn", "=", "insn", ";", "}", "}", "}", "}", "}", ""], "natrual_language": ["Go", "through", "the", "instruction", "stream", "and", "insert", "nops", "where", "necessary", ".", "Also", "delete", "any", "high-part", "relocations", "whose", "partnering", "low", "parts", "are", "now", "all", "dead", ".", "See", "if", "the", "whole", "function", "can", "then", "be", "put", "into", ".set", "noreorder", "and", ".set", "nomacro", "."], "TS_V_token": ["mips", "37", "0", "0", "0", "0", "2", "0", "0"], "File": "mips4", "Func": "mips_reorg_process_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32725, "Length": 491} {"ground_truth": ["", "static", "bool", "mips_return_in_memory", "(", "const_tree", "type", ",", "const_tree", "fndecl", "ATTRIBUTE_UNUSED", ")", "{", "return", "(", "TARGET_OLDABI", "?", "TYPE_MODE", "(", "type", ")", "==", "BLKmode", ":", "!", "IN_RANGE", "(", "int_size_in_bytes", "(", "type", ")", ",", "0", ",", "2", "*", "UNITS_PER_WORD", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_RETURN_IN_MEMORY", ".", "Under", "the", "old", "(", "i.e.", ",", "32", "and", "O64", "ABIs", ")", "all", "BLKmode", "objects", "are", "returned", "in", "memory", ".", "Under", "the", "new", "(", "N32", "and", "64-bit", "MIPS", "ABIs", ")", "small", "structures", "are", "returned", "in", "a", "register", ".", "Objects", "with", "varying", "size", "must", "still", "be", "returned", "in", "memory", ",", "of", "course", "."], "TS_V_token": ["mips", "0", "2"], "File": "mips4", "Func": "mips_return_in_memory", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32726, "Length": 40} {"ground_truth": ["", "static", "bool", "mips_scalar_mode_supported_p", "(", "machine_mode", "mode", ")", "{", "if", "(", "ALL_FIXED_POINT_MODE_P", "(", "mode", ")", "&&", "GET_MODE_PRECISION", "(", "mode", ")", "<=", "2", "*", "BITS_PER_WORD", ")", "return", "true", ";", "return", "default_scalar_mode_supported_p", "(", "mode", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCALAR_MODE_SUPPORTED_P", "."], "TS_V_token": ["mips", "2"], "File": "mips4", "Func": "mips_scalar_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32727, "Length": 34} {"ground_truth": ["", "bool", "mips_secondary_memory_needed", "(", "enum", "reg_class", "class1", ",", "enum", "reg_class", "class2", ",", "machine_mode", "mode", ")", "{", "if", "(", "lra_in_progress", "&&", "(", "class1", "==", "NO_REGS", "||", "class2", "==", "NO_REGS", ")", ")", "return", "false", ";", "if", "(", "(", "(", "class1", "==", "FP_REGS", ")", "!=", "(", "class2", "==", "FP_REGS", ")", ")", "&&", "(", "(", "TARGET_FLOATXX", "&&", "!", "ISA_HAS_MXHC1", ")", "||", "TARGET_O32_FP64A_ABI", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", ">=", "8", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "SECONDARY_MEMORY_NEEDED", "."], "TS_V_token": ["mips", "8"], "File": "mips4", "Func": "mips_secondary_memory_needed", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32728, "Length": 73} {"ground_truth": ["", "enum", "reg_class", "mips_secondary_reload_class", "(", "enum", "reg_class", "rclass", ",", "machine_mode", "mode", ",", "rtx", "x", ",", "bool", ")", "{", "int", "regno", ";", "if", "(", "mips_dangerous_for_la25_p", "(", "x", ")", ")", "return", "reg_class_subset_p", "(", "rclass", ",", "LEA_REGS", ")", "?", "NO_REGS", ":", "LEA_REGS", ";", "regno", "=", "true_regnum", "(", "x", ")", ";", "if", "(", "TARGET_MIPS16", ")", "{", "if", "(", "!", "reg_class_subset_p", "(", "rclass", ",", "M16_REGS", ")", "&&", "!", "M16_REG_P", "(", "regno", ")", ")", "return", "M16_REGS", ";", "return", "NO_REGS", ";", "}", "if", "(", "reg_class_subset_p", "(", "rclass", ",", "ACC_REGS", ")", ")", "return", "GP_REG_P", "(", "regno", ")", "?", "NO_REGS", ":", "GR_REGS", ";", "if", "(", "ACC_REG_P", "(", "regno", ")", ")", "return", "reg_class_subset_p", "(", "rclass", ",", "GR_REGS", ")", "?", "NO_REGS", ":", "GR_REGS", ";", "if", "(", "reg_class_subset_p", "(", "rclass", ",", "FP_REGS", ")", ")", "{", "if", "(", "regno", "<", "0", "||", "(", "MEM_P", "(", "x", ")", "&&", "(", "GET_MODE_SIZE", "(", "mode", ")", "==", "4", "||", "GET_MODE_SIZE", "(", "mode", ")", "==", "8", ")", ")", ")", "return", "NO_REGS", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "||", "x", "==", "CONST0_RTX", "(", "mode", ")", ")", "return", "NO_REGS", ";", "if", "(", "CONSTANT_P", "(", "x", ")", "&&", "!", "targetm", ".", "cannot_force_const_mem", "(", "mode", ",", "x", ")", ")", "return", "NO_REGS", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "mips_mode_ok_for_mov_fmt_p", "(", "mode", ")", ")", "return", "NO_REGS", ";", "return", "GR_REGS", ";", "}", "if", "(", "FP_REG_P", "(", "regno", ")", ")", "return", "reg_class_subset_p", "(", "rclass", ",", "GR_REGS", ")", "?", "NO_REGS", ":", "GR_REGS", ";", "return", "NO_REGS", ";", "}", ""], "natrual_language": ["This", "function", "returns", "the", "register", "class", "required", "for", "a", "secondary", "register", "when", "copying", "between", "one", "of", "the", "registers", "in", "CLASS", ",", "and", "X", ",", "using", "MODE", ".", "If", "IN_P", "is", "nonzero", ",", "the", "copy", "is", "going", "from", "X", "to", "the", "register", ",", "otherwise", "the", "register", "is", "the", "source", ".", "A", "return", "value", "of", "NO_REGS", "means", "that", "no", "secondary", "register", "is", "required", "."], "TS_V_token": ["mips", "0", "4", "8"], "File": "mips4", "Func": "mips_secondary_reload_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32729, "Length": 233} {"ground_truth": ["", "static", "void", "mips_setup_incoming_varargs", "(", "cumulative_args_t", "cum", ",", "machine_mode", "mode", ",", "tree", "type", ",", "int", "*", "pretend_size", "ATTRIBUTE_UNUSED", ",", "int", "no_rtl", ")", "{", "CUMULATIVE_ARGS", "local_cum", ";", "int", "gp_saved", ",", "fp_saved", ";", "local_cum", "=", "*", "get_cumulative_args", "(", "cum", ")", ";", "mips_function_arg_advance", "(", "pack_cumulative_args", "(", "&", "local_cum", ")", ",", "mode", ",", "type", ",", "true", ")", ";", "gp_saved", "=", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_gprs", ";", "fp_saved", "=", "(", "EABI_FLOAT_VARARGS_P", "?", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_fprs", ":", "0", ")", ";", "if", "(", "!", "no_rtl", ")", "{", "if", "(", "gp_saved", ">", "0", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "-", "gp_saved", "*", "UNITS_PER_WORD", ")", ";", "mem", "=", "gen_frame_mem", "(", "BLKmode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "move_block_from_reg", "(", "local_cum", ".", "num_gprs", "+", "GP_ARG_FIRST", ",", "mem", ",", "gp_saved", ")", ";", "}", "if", "(", "fp_saved", ">", "0", ")", "{", "machine_mode", "mode", ";", "int", "off", ",", "i", ";", "off", "=", "(", "-", "gp_saved", "*", "UNITS_PER_WORD", ")", "&", "-", "UNITS_PER_FPVALUE", ";", "off", "-=", "fp_saved", "*", "UNITS_PER_FPREG", ";", "mode", "=", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ";", "for", "(", "i", "=", "local_cum", ".", "num_fprs", ";", "i", "<", "MAX_ARGS_IN_REGISTERS", ";", "i", "+=", "MAX_FPRS_PER_FMT", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "off", ")", ";", "mem", "=", "gen_frame_mem", "(", "mode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "mips_emit_move", "(", "mem", ",", "gen_rtx_REG", "(", "mode", ",", "FP_ARG_FIRST", "+", "i", ")", ")", ";", "off", "+=", "UNITS_PER_HWFPVALUE", ";", "}", "}", "}", "if", "(", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "==", "0", ")", "cfun", "->", "machine", "->", "varargs_size", "=", "(", "gp_saved", "*", "UNITS_PER_WORD", "+", "fp_saved", "*", "UNITS_PER_FPREG", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SETUP_INCOMING_VARARGS", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips4", "Func": "mips_setup_incoming_varargs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32730, "Length": 286} {"ground_truth": ["", "static", "void", "mips_set_compression_mode", "(", "unsigned", "int", "compression_mode", ")", "{", "if", "(", "compression_mode", "==", "old_compression_mode", ")", "return", ";", "target_flags", "=", "mips_base_target_flags", ";", "flag_schedule_insns", "=", "mips_base_schedule_insns", ";", "flag_reorder_blocks_and_partition", "=", "mips_base_reorder_blocks_and_partition", ";", "flag_move_loop_invariants", "=", "mips_base_move_loop_invariants", ";", "align_loops", "=", "mips_base_align_loops", ";", "align_jumps", "=", "mips_base_align_jumps", ";", "align_functions", "=", "mips_base_align_functions", ";", "target_flags", "&=", "~", "(", "MASK_MIPS16", "|", "MASK_MICROMIPS", ")", ";", "target_flags", "|=", "compression_mode", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "target_flags", "|=", "MASK_MIPS16", ";", "target_flags", "&=", "~", "MASK_SYNCI", ";", "flag_schedule_insns", "=", "0", ";", "flag_reorder_blocks_and_partition", "=", "0", ";", "flag_move_loop_invariants", "=", "0", ";", "target_flags", "|=", "MASK_EXPLICIT_RELOCS", ";", "targetm", ".", "min_anchor_offset", "=", "0", ";", "targetm", ".", "max_anchor_offset", "=", "127", ";", "targetm", ".", "const_anchor", "=", "0", ";", "target_flags", "&=", "~", "MASK_RELAX_PIC_CALLS", ";", "target_flags", "&=", "~", "MASK_FIX_R4000", ";", "if", "(", "flag_pic", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"MIPS16 PIC for ABIs other than o32 and o64\"", ")", ";", "if", "(", "TARGET_XGOT", ")", "sorry", "(", "\"MIPS16 -mxgot code\"", ")", ";", "if", "(", "TARGET_HARD_FLOAT_ABI", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"hard-float MIPS16 code for ABIs other than o32 and o64\"", ")", ";", "}", "else", "{", "if", "(", "TARGET_MICROMIPS", ")", "target_flags", "&=", "~", "MASK_BRANCHLIKELY", ";", "if", "(", "TARGET_64BIT", ")", "{", "if", "(", "align_loops", "==", "0", ")", "align_loops", "=", "8", ";", "if", "(", "align_jumps", "==", "0", ")", "align_jumps", "=", "8", ";", "if", "(", "align_functions", "==", "0", ")", "align_functions", "=", "8", ";", "}", "targetm", ".", "min_anchor_offset", "=", "-", "32768", ";", "targetm", ".", "max_anchor_offset", "=", "32767", ";", "targetm", ".", "const_anchor", "=", "0x8000", ";", "}", "mips_init_relocs", "(", ")", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "if", "(", "!", "mips16_globals", ")", "mips16_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "mips16_globals", ")", ";", "}", "else", "restore_target_globals", "(", "&", "default_target_globals", ")", ";", "old_compression_mode", "=", "compression_mode", ";", "}", ""], "natrual_language": ["Set", "up", "the", "target-dependent", "global", "state", "for", "ISA", "mode", "COMPRESSION_MODE", ",", "which", "is", "either", "MASK_MIPS16", "or", "MASK_MICROMIPS", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "127", "0", "\"MIPS16 PIC for ABIs other than o32 and o64\"", "\"MIPS16 -mxgot code\"", "\"hard-float MIPS16 code for ABIs other than o32 and o64\"", "0", "8", "0", "8", "0", "8", "32768", "32767", "0x8000"], "File": "mips4", "Func": "mips_set_compression_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32731, "Length": 260} {"ground_truth": ["", "static", "unsigned", "HOST_WIDE_INT", "mips_shift_truncation_mask", "(", "machine_mode", "mode", ")", "{", "if", "(", "TARGET_LOONGSON_VECTORS", "&&", "VECTOR_MODE_P", "(", "mode", ")", ")", "return", "0", ";", "return", "GET_MODE_BITSIZE", "(", "mode", ")", "-", "1", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SHIFT_TRUNCATION_MASK", ".", "We", "want", "to", "keep", "the", "default", "behavior", "of", "TARGET_SHIFT_TRUNCATION_MASK", "for", "non-vector", "modes", "even", "when", "TARGET_LOONGSON_VECTORS", "is", "true", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips4", "Func": "mips_shift_truncation_mask", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32732, "Length": 30} {"ground_truth": ["", "static", "void", "mips_sim_issue_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ")", "{", "curr_state", "=", "state", "->", "dfa_state", ";", "state_transition", "(", "curr_state", ",", "insn", ")", ";", "state", "->", "insns_left", "=", "targetm", ".", "sched", ".", "variable_issue", "(", "0", ",", "false", ",", "insn", ",", "state", "->", "insns_left", ")", ";", "mips_sim_insn", "=", "insn", ";", "note_stores", "(", "PATTERN", "(", "insn", ")", ",", "mips_sim_record_set", ",", "state", ")", ";", "}", ""], "natrual_language": ["Issue", "instruction", "INSN", "in", "scheduler", "state", "STATE", ".", "Assume", "that", "INSN", "can", "issue", "immediately", "(", "i.e.", ",", "that", "mips_sim_wait_insn", "has", "already", "been", "called", ")", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_sim_issue_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32733, "Length": 65} {"ground_truth": ["", "void", "mips_split_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "rtx", "low_dest", ";", "gcc_checking_assert", "(", "mips_split_move_p", "(", "dest", ",", "src", ",", "split_type", ")", ")", ";", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "||", "FP_REG_RTX_P", "(", "src", ")", ")", "{", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "DImode", ")", "emit_insn", "(", "gen_move_doubleword_fprdi", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "DFmode", ")", "emit_insn", "(", "gen_move_doubleword_fprdf", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V2SFmode", ")", "emit_insn", "(", "gen_move_doubleword_fprv2sf", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V2SImode", ")", "emit_insn", "(", "gen_move_doubleword_fprv2si", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V4HImode", ")", "emit_insn", "(", "gen_move_doubleword_fprv4hi", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V8QImode", ")", "emit_insn", "(", "gen_move_doubleword_fprv8qi", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "TFmode", ")", "emit_insn", "(", "gen_move_doubleword_fprtf", "(", "dest", ",", "src", ")", ")", ";", "else", "gcc_unreachable", "(", ")", ";", "}", "else", "if", "(", "REG_P", "(", "dest", ")", "&&", "REGNO", "(", "dest", ")", "==", "MD_REG_FIRST", ")", "{", "low_dest", "=", "mips_subword", "(", "dest", ",", "false", ")", ";", "mips_emit_move", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mthidi_ti", "(", "dest", ",", "mips_subword", "(", "src", ",", "true", ")", ",", "low_dest", ")", ")", ";", "else", "emit_insn", "(", "gen_mthisi_di", "(", "dest", ",", "mips_subword", "(", "src", ",", "true", ")", ",", "low_dest", ")", ")", ";", "}", "else", "if", "(", "REG_P", "(", "src", ")", "&&", "REGNO", "(", "src", ")", "==", "MD_REG_FIRST", ")", "{", "mips_emit_move", "(", "mips_subword", "(", "dest", ",", "false", ")", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mfhidi_ti", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "src", ")", ")", ";", "else", "emit_insn", "(", "gen_mfhisi_di", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "src", ")", ")", ";", "}", "else", "{", "low_dest", "=", "mips_subword", "(", "dest", ",", "false", ")", ";", "if", "(", "REG_P", "(", "low_dest", ")", "&&", "reg_overlap_mentioned_p", "(", "low_dest", ",", "src", ")", ")", "{", "mips_emit_move", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "mips_subword", "(", "src", ",", "true", ")", ")", ";", "mips_emit_move", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "}", "else", "{", "mips_emit_move", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "mips_emit_move", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "mips_subword", "(", "src", ",", "true", ")", ")", ";", "}", "}", "}", ""], "natrual_language": ["Split", "a", "move", "from", "SRC", "to", "DEST", ",", "given", "that", "mips_split_move_p", "holds", ".", "SPLIT_TYPE", "describes", "the", "split", "condition", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_split_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32734, "Length": 443} {"ground_truth": ["", "void", "mips_split_move_insn", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "insn", ")", "{", "mips_split_move", "(", "dest", ",", "src", ",", "mips_insn_split_type", "(", "insn", ")", ")", ";", "}", ""], "natrual_language": ["Split", "a", "move", "from", "SRC", "to", "DEST", "in", "INSN", ",", "given", "that", "mips_split_move_insn_p", "holds", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_split_move_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32735, "Length": 26} {"ground_truth": ["", "bool", "mips_split_move_p", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "if", "(", "mips_mult_move_p", "(", "dest", ",", "src", ",", "split_type", ")", ")", "return", "false", ";", "unsigned", "int", "size", "=", "GET_MODE_SIZE", "(", "GET_MODE", "(", "dest", ")", ")", ";", "if", "(", "size", "==", "8", "&&", "FP_REG_RTX_P", "(", "src", ")", "&&", "FP_REG_RTX_P", "(", "dest", ")", ")", "return", "false", ";", "if", "(", "size", "==", "8", "&&", "ISA_HAS_LDC1_SDC1", ")", "{", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "&&", "MEM_P", "(", "src", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "src", ")", "&&", "MEM_P", "(", "dest", ")", ")", "return", "false", ";", "}", "return", "size", ">", "UNITS_PER_WORD", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "move", "from", "SRC", "to", "DEST", "should", "be", "split", "into", "two", ".", "SPLIT_TYPE", "describes", "the", "split", "condition", "."], "TS_V_token": ["mips", "8", "8"], "File": "mips4", "Func": "mips_split_move_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32736, "Length": 105} {"ground_truth": ["", "static", "tree", "mips_std_gimplify_va_arg_expr", "(", "tree", "valist", ",", "tree", "type", ",", "gimple_seq", "*", "pre_p", ",", "gimple_seq", "*", "post_p", ")", "{", "tree", "addr", ",", "t", ",", "type_size", ",", "rounded_size", ",", "valist_tmp", ";", "unsigned", "HOST_WIDE_INT", "align", ",", "boundary", ";", "bool", "indirect", ";", "indirect", "=", "pass_by_reference", "(", "NULL", ",", "TYPE_MODE", "(", "type", ")", ",", "type", ",", "false", ")", ";", "if", "(", "indirect", ")", "type", "=", "build_pointer_type", "(", "type", ")", ";", "align", "=", "PARM_BOUNDARY", "/", "BITS_PER_UNIT", ";", "boundary", "=", "targetm", ".", "calls", ".", "function_arg_boundary", "(", "TYPE_MODE", "(", "type", ")", ",", "type", ")", ";", "if", "(", "boundary", ">", "MAX_SUPPORTED_STACK_ALIGNMENT", ")", "boundary", "=", "MAX_SUPPORTED_STACK_ALIGNMENT", ";", "boundary", "/=", "BITS_PER_UNIT", ";", "valist_tmp", "=", "get_initialized_tmp_var", "(", "valist", ",", "pre_p", ",", "NULL", ")", ";", "if", "(", "boundary", ">", "align", ")", "{", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "fold_build_pointer_plus_hwi", "(", "valist_tmp", ",", "boundary", "-", "1", ")", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "fold_build2", "(", "BIT_AND_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "build_int_cst", "(", "TREE_TYPE", "(", "valist", ")", ",", "-", "boundary", ")", ")", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "}", "else", "boundary", "=", "align", ";", "boundary", "*=", "BITS_PER_UNIT", ";", "if", "(", "boundary", "<", "TYPE_ALIGN", "(", "type", ")", ")", "{", "type", "=", "build_variant_type_copy", "(", "type", ")", ";", "TYPE_ALIGN", "(", "type", ")", "=", "boundary", ";", "}", "type_size", "=", "size_in_bytes", "(", "type", ")", ";", "rounded_size", "=", "round_up", "(", "type_size", ",", "align", ")", ";", "gimplify_expr", "(", "&", "rounded_size", ",", "pre_p", ",", "post_p", ",", "is_gimple_val", ",", "fb_rvalue", ")", ";", "addr", "=", "valist_tmp", ";", "if", "(", "PAD_VARARGS_DOWN", "&&", "!", "integer_zerop", "(", "rounded_size", ")", ")", "{", "t", "=", "fold_build2_loc", "(", "input_location", ",", "GT_EXPR", ",", "sizetype", ",", "rounded_size", ",", "size_int", "(", "align", ")", ")", ";", "t", "=", "fold_build3", "(", "COND_EXPR", ",", "sizetype", ",", "t", ",", "size_zero_node", ",", "size_binop", "(", "MINUS_EXPR", ",", "rounded_size", ",", "type_size", ")", ")", ";", "addr", "=", "fold_build_pointer_plus", "(", "addr", ",", "t", ")", ";", "}", "t", "=", "fold_build_pointer_plus", "(", "valist_tmp", ",", "rounded_size", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist", ",", "t", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "addr", "=", "fold_convert", "(", "build_pointer_type", "(", "type", ")", ",", "addr", ")", ";", "if", "(", "indirect", ")", "addr", "=", "build_va_arg_indirect_ref", "(", "addr", ")", ";", "return", "build_va_arg_indirect_ref", "(", "addr", ")", ";", "}", ""], "natrual_language": ["Like", "std_gimplify_va_arg_expr", ",", "but", "apply", "alignment", "to", "zero-sized", "types", "as", "well", "."], "TS_V_token": ["mips", "1"], "File": "mips4", "Func": "mips_std_gimplify_va_arg_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32737, "Length": 386} {"ground_truth": ["", "bool", "mips_store_data_bypass_p", "(", "rtx_insn", "*", "out_insn", ",", "rtx_insn", "*", "in_insn", ")", "{", "if", "(", "GET_CODE", "(", "PATTERN", "(", "in_insn", ")", ")", "==", "UNSPEC_VOLATILE", ")", "return", "false", ";", "return", "!", "store_data_bypass_p", "(", "out_insn", ",", "in_insn", ")", ";", "}", ""], "natrual_language": ["True", "if", "the", "dependency", "between", "OUT_INSN", "and", "IN_INSN", "is", "on", "the", "store", "data", "rather", "than", "the", "address", ".", "We", "need", "this", "because", "the", "cprestore", "pattern", "is", "type", "``", "store", "''", ",", "but", "is", "defined", "using", "an", "UNSPEC_VOLATILE", ",", "which", "causes", "the", "default", "routine", "to", "abort", ".", "We", "just", "return", "false", "for", "that", "case", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_store_data_bypass_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32738, "Length": 37} {"ground_truth": ["", "static", "void", "mips_swap_registers", "(", "unsigned", "int", "i", ")", "{", "int", "tmpi", ";", "const", "char", "*", "tmps", ";", "SWAP_INT", "(", "fixed_regs", "[", "i", "]", ",", "fixed_regs", "[", "i", "+", "1", "]", ")", ";", "SWAP_INT", "(", "call_used_regs", "[", "i", "]", ",", "call_used_regs", "[", "i", "+", "1", "]", ")", ";", "SWAP_INT", "(", "call_really_used_regs", "[", "i", "]", ",", "call_really_used_regs", "[", "i", "+", "1", "]", ")", ";", "SWAP_STRING", "(", "reg_names", "[", "i", "]", ",", "reg_names", "[", "i", "+", "1", "]", ")", ";", "}", ""], "natrual_language": ["Swap", "the", "register", "information", "for", "registers", "I", "and", "I", "+", "1", ",", "which", "currently", "have", "the", "wrong", "endianness", ".", "Note", "that", "the", "registers", "'", "fixedness", "and", "call-clobberedness", "might", "have", "been", "set", "on", "the", "command", "line", "."], "TS_V_token": ["mips", "1", "1", "1", "1"], "File": "mips4", "Func": "mips_swap_registers", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32739, "Length": 78} {"ground_truth": ["", "static", "int", "mips_symbol_insns", "(", "enum", "mips_symbol_type", "type", ",", "machine_mode", "mode", ")", "{", "return", "mips_symbol_insns_1", "(", "type", ",", "mode", ")", "*", "(", "TARGET_MIPS16", "?", "2", ":", "1", ")", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "to", "load", "a", "symbol", "of", "the", "given", "type", "into", "a", "register", ".", "If", "valid", "in", "an", "address", ",", "the", "same", "number", "of", "instructions", "are", "needed", "for", "loads", "and", "stores", ".", "Treat", "extended", "mips16", "instructions", "as", "two", "instructions", "."], "TS_V_token": ["mips", "2", "1"], "File": "mips4", "Func": "mips_symbol_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32740, "Length": 29} {"ground_truth": ["", "bool", "mips_use_by_pieces_infrastructure_p", "(", "unsigned", "HOST_WIDE_INT", "size", ",", "unsigned", "int", "align", ",", "enum", "by_pieces_operation", "op", ",", "bool", "speed_p", ")", "{", "if", "(", "op", "==", "STORE_BY_PIECES", ")", "return", "mips_store_by_pieces_p", "(", "size", ",", "align", ")", ";", "if", "(", "op", "==", "MOVE_BY_PIECES", "&&", "HAVE_movmemsi", ")", "{", "if", "(", "currently_expanding_to_rtl", ")", "return", "false", ";", "if", "(", "align", "<", "BITS_PER_WORD", ")", "return", "size", "<", "UNITS_PER_WORD", ";", "return", "size", "<=", "MIPS_MAX_MOVE_BYTES_STRAIGHT", ";", "}", "return", "default_use_by_pieces_infrastructure_p", "(", "size", ",", "align", ",", "op", ",", "speed_p", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_USE_MOVE_BY_PIECES_INFRASTRUCTURE_P", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_use_by_pieces_infrastructure_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32741, "Length": 79} {"ground_truth": ["", "static", "bool", "mips_use_shadow_register_set_p", "(", "tree", "type", ")", "{", "return", "lookup_attribute", "(", "\"use_shadow_register_set\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", ";", "}", ""], "natrual_language": ["Check", "if", "the", "attribute", "to", "use", "shadow", "register", "set", "is", "set", "for", "a", "function", "."], "TS_V_token": ["mips", "\"use_shadow_register_set\""], "File": "mips4", "Func": "mips_use_shadow_register_set_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32742, "Length": 22} {"ground_truth": ["", "static", "bool", "mips_valid_lo_sum_p", "(", "enum", "mips_symbol_type", "symbol_type", ",", "machine_mode", "mode", ")", "{", "if", "(", "mips_symbol_insns", "(", "symbol_type", ",", "mode", ")", "==", "0", ")", "return", "false", ";", "if", "(", "mips_lo_relocs", "[", "symbol_type", "]", "==", "NULL", ")", "return", "false", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_WORD", "&&", "GET_MODE_BITSIZE", "(", "mode", ")", ">", "GET_MODE_ALIGNMENT", "(", "mode", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "LO_SUM", "can", "address", "a", "value", "of", "mode", "MODE", "when", "the", "LO_SUM", "symbol", "has", "type", "SYMBOL_TYPE", "."], "TS_V_token": ["mips", "0"], "File": "mips4", "Func": "mips_valid_lo_sum_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32743, "Length": 64} {"ground_truth": ["", "static", "bool", "mips_valid_offset_p", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "if", "(", "!", "const_arith_operand", "(", "x", ",", "Pmode", ")", ")", "return", "false", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_WORD", "&&", "!", "SMALL_OPERAND", "(", "INTVAL", "(", "x", ")", "+", "GET_MODE_SIZE", "(", "mode", ")", "-", "UNITS_PER_WORD", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", ",", "for", "every", "base", "register", "BASE_REG", ",", "(", "plus", "BASE_REG", "X", ")", "can", "address", "a", "value", "of", "mode", "MODE", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_valid_offset_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32744, "Length": 56} {"ground_truth": ["", "static", "bool", "mips_valid_pointer_mode", "(", "machine_mode", "mode", ")", "{", "return", "mode", "==", "SImode", "||", "(", "TARGET_64BIT", "&&", "mode", "==", "DImode", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VALID_POINTER_MODE", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_valid_pointer_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32745, "Length": 22} {"ground_truth": ["", "mips_va_arg", "(", "valist", ",", "type", ")", "{", "\\", "if", "(", "TARGET_MIPS16", ")", "\\", "sorry", "(", "\"mips16 function profiling\"", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\t.set\\tnoat\\n\"", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\tmove\\t%s,%s\\t\\t# save current return address\\n\"", ",", "\\", "reg_names", "[", "GP_REG_FIRST", "+", "1", "]", ",", "reg_names", "[", "GP_REG_FIRST", "+", "31", "]", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\\", "\"\\t%s\\t%s,%s,%d\\t\\t# _mcount pops 2 words from stack\\n\"", ",", "\\", "TARGET_64BIT", "?", "\"dsubu\"", ":", "\"subu\"", ",", "\\", "reg_names", "[", "STACK_POINTER_REGNUM", "]", ",", "\\", "reg_names", "[", "STACK_POINTER_REGNUM", "]", ",", "\\", "Pmode", "==", "DImode", "?", "16", ":", "8", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\tjal\\t_mcount\\n\"", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\t.set\\tat\\n\"", ")", ";", "\\", "}", ""], "natrual_language": ["Implement", "va_arg", "."], "TS_V_token": ["mips", "\"mips16 function profiling\"", "\"\\t.set\\tnoat\\n\"", "\"\\tmove\\t%s,%s\\t\\t# save current return address\\n\"", "1", "31", "\"\\t%s\\t%s,%s,%d\\t\\t# _mcount pops 2 words from stack\\n\"", "\"dsubu\"", "\"subu\"", "16", "8", "\"\\tjal\\t_mcount\\n\"", "\"\\t.set\\tat\\n\""], "File": "mips4", "Func": "mips_va_arg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32746, "Length": 104} {"ground_truth": ["", "static", "bool", "mips_vectorize_vec_perm_const_ok", "(", "machine_mode", "vmode", ",", "const", "unsigned", "char", "*", "sel", ")", "{", "struct", "expand_vec_perm_d", "d", ";", "unsigned", "int", "i", ",", "nelt", ",", "which", ";", "bool", "ret", ";", "d", ".", "vmode", "=", "vmode", ";", "d", ".", "nelt", "=", "nelt", "=", "GET_MODE_NUNITS", "(", "d", ".", "vmode", ")", ";", "d", ".", "testing_p", "=", "true", ";", "memcpy", "(", "d", ".", "perm", ",", "sel", ",", "nelt", ")", ";", "for", "(", "i", "=", "which", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "unsigned", "char", "e", "=", "d", ".", "perm", "[", "i", "]", ";", "gcc_assert", "(", "e", "<", "2", "*", "nelt", ")", ";", "which", "|=", "(", "e", "<", "nelt", "?", "1", ":", "2", ")", ";", "}", "if", "(", "which", "==", "2", ")", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "d", ".", "perm", "[", "i", "]", "-=", "nelt", ";", "d", ".", "one_vector_p", "=", "(", "which", "!=", "3", ")", ";", "d", ".", "target", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "1", ")", ";", "d", ".", "op1", "=", "d", ".", "op0", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "2", ")", ";", "if", "(", "!", "d", ".", "one_vector_p", ")", "d", ".", "op1", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "3", ")", ";", "start_sequence", "(", ")", ";", "ret", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "end_sequence", "(", ")", ";", "return", "ret", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_VEC_PERM_CONST_OK", "."], "TS_V_token": ["mips", "0", "2", "1", "2", "2", "0", "3", "1", "2", "3"], "File": "mips4", "Func": "mips_vectorize_vec_perm_const_ok", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32747, "Length": 228} {"ground_truth": ["", "static", "bool", "mips_vector_mode_supported_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "V2SFmode", ":", "return", "TARGET_PAIRED_SINGLE_FLOAT", ";", "case", "V2HImode", ":", "case", "V4QImode", ":", "case", "V2HQmode", ":", "case", "V2UHQmode", ":", "case", "V2HAmode", ":", "case", "V2UHAmode", ":", "case", "V4QQmode", ":", "case", "V4UQQmode", ":", "return", "TARGET_DSP", ";", "case", "V2SImode", ":", "case", "V4HImode", ":", "case", "V8QImode", ":", "return", "TARGET_LOONGSON_VECTORS", ";", "default", ":", "return", "false", ";", "}", "}", ""], "natrual_language": ["Target", "hook", "for", "vector_mode_supported_p", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "mips_vector_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32748, "Length": 65} {"ground_truth": ["", "static", "void", "r10k_insert_cache_barriers", "(", "void", ")", "{", "int", "*", "rev_post_order", ";", "unsigned", "int", "i", ",", "n", ";", "basic_block", "bb", ";", "sbitmap", "protected_bbs", ";", "rtx_insn", "*", "insn", ",", "*", "end", ";", "rtx", "unprotected_region", ";", "if", "(", "TARGET_MIPS16", ")", "{", "sorry", "(", "\"%qs does not support MIPS16 code\"", ",", "\"-mr10k-cache-barrier\"", ")", ";", "return", ";", "}", "calculate_dominance_info", "(", "CDI_DOMINATORS", ")", ";", "protected_bbs", "=", "sbitmap_alloc", "(", "last_basic_block_for_fn", "(", "cfun", ")", ")", ";", "bitmap_clear", "(", "protected_bbs", ")", ";", "rev_post_order", "=", "XNEWVEC", "(", "int", ",", "last_basic_block_for_fn", "(", "cfun", ")", ")", ";", "n", "=", "pre_and_rev_post_order_compute", "(", "NULL", ",", "rev_post_order", ",", "false", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "n", ";", "i", "++", ")", "{", "bb", "=", "BASIC_BLOCK_FOR_FN", "(", "cfun", ",", "rev_post_order", "[", "i", "]", ")", ";", "if", "(", "r10k_protected_bb_p", "(", "bb", ",", "protected_bbs", ")", ")", "unprotected_region", "=", "NULL_RTX", ";", "else", "unprotected_region", "=", "pc_rtx", ";", "end", "=", "NEXT_INSN", "(", "BB_END", "(", "bb", ")", ")", ";", "for", "(", "insn", "=", "BB_HEAD", "(", "bb", ")", ";", "insn", "!=", "end", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "{", "if", "(", "unprotected_region", "&&", "USEFUL_INSN_P", "(", "insn", ")", ")", "{", "if", "(", "recog_memoized", "(", "insn", ")", "==", "CODE_FOR_mips_cache", ")", "unprotected_region", "=", "NULL_RTX", ";", "else", "{", "if", "(", "unprotected_region", "==", "pc_rtx", ")", "unprotected_region", "=", "insn", ";", "if", "(", "r10k_needs_protection_p", "(", "insn", ")", ")", "{", "emit_insn_before", "(", "gen_r10k_cache_barrier", "(", ")", ",", "unprotected_region", ")", ";", "unprotected_region", "=", "NULL_RTX", ";", "}", "}", "}", "if", "(", "CALL_P", "(", "insn", ")", ")", "unprotected_region", "=", "pc_rtx", ";", "}", "if", "(", "unprotected_region", "==", "NULL_RTX", ")", "bitmap_set_bit", "(", "protected_bbs", ",", "bb", "->", "index", ")", ";", "}", "XDELETEVEC", "(", "rev_post_order", ")", ";", "sbitmap_free", "(", "protected_bbs", ")", ";", "free_dominance_info", "(", "CDI_DOMINATORS", ")", ";", "}", ""], "natrual_language": ["Implement", "-mr10k-cache-barrier=", "for", "the", "current", "function", "."], "TS_V_token": ["mips", "\"%qs does not support MIPS16 code\"", "\"-mr10k-cache-barrier\"", "0"], "File": "mips4", "Func": "r10k_insert_cache_barriers", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32749, "Length": 269} {"ground_truth": ["", "static", "bool", "r10k_needs_protection_p", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "CALL_P", "(", "insn", ")", ")", "return", "r10k_needs_protection_p_call", "(", "PATTERN", "(", "insn", ")", ")", ";", "if", "(", "mips_r10k_cache_barrier", "==", "R10K_CACHE_BARRIER_STORE", ")", "{", "note_stores", "(", "PATTERN", "(", "insn", ")", ",", "r10k_needs_protection_p_store", ",", "&", "insn", ")", ";", "return", "insn", "==", "NULL_RTX", ";", "}", "return", "r10k_needs_protection_p_1", "(", "PATTERN", "(", "insn", ")", ",", "insn", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "instruction", "INSN", "needs", "to", "be", "protected", "by", "an", "R10K", "cache", "barrier", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "r10k_needs_protection_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32750, "Length": 63} {"ground_truth": ["", "static", "bool", "r10k_safe_mem_expr_p", "(", "tree", "expr", ",", "unsigned", "HOST_WIDE_INT", "offset", ")", "{", "HOST_WIDE_INT", "bitoffset", ",", "bitsize", ";", "tree", "inner", ",", "var_offset", ";", "machine_mode", "mode", ";", "int", "unsigned_p", ",", "volatile_p", ";", "inner", "=", "get_inner_reference", "(", "expr", ",", "&", "bitsize", ",", "&", "bitoffset", ",", "&", "var_offset", ",", "&", "mode", ",", "&", "unsigned_p", ",", "&", "volatile_p", ",", "false", ")", ";", "if", "(", "!", "DECL_P", "(", "inner", ")", "||", "!", "DECL_SIZE_UNIT", "(", "inner", ")", "||", "var_offset", ")", "return", "false", ";", "offset", "+=", "bitoffset", "/", "BITS_PER_UNIT", ";", "return", "offset", "<", "tree_to_uhwi", "(", "DECL_SIZE_UNIT", "(", "inner", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "MEM", "with", "MEM_EXPR", "EXPR", "and", "MEM_OFFSET", "OFFSET", "is", "an", "in-range", "access", "to", "an", "automatic", "variable", ",", "or", "to", "an", "object", "with", "a", "link-time-constant", "address", "."], "TS_V_token": ["mips"], "File": "mips4", "Func": "r10k_safe_mem_expr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32751, "Length": 94} {"ground_truth": ["", "static", "bool", "umips_build_save_restore", "(", "mips_save_restore_fn", "fn", ",", "unsigned", "*", "mask", ",", "HOST_WIDE_INT", "*", "offset", ")", "{", "int", "nregs", ";", "unsigned", "int", "i", ",", "j", ";", "rtx", "pattern", ",", "set", ",", "reg", ",", "mem", ";", "HOST_WIDE_INT", "this_offset", ";", "rtx", "this_base", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "umips_swm_mask", ")", ";", "i", "++", ")", "if", "(", "(", "*", "mask", "&", "0xffff0000", ")", "==", "umips_swm_mask", "[", "i", "]", ")", "break", ";", "if", "(", "i", "==", "ARRAY_SIZE", "(", "umips_swm_mask", ")", ")", "return", "false", ";", "nregs", "=", "(", "umips_swm_encoding", "[", "i", "]", "&", "0xf", ")", "+", "(", "umips_swm_encoding", "[", "i", "]", ">>", "4", ")", ";", "this_offset", "=", "*", "offset", "-", "UNITS_PER_WORD", "*", "(", "nregs", "-", "1", ")", ";", "if", "(", "!", "UMIPS_12BIT_OFFSET_P", "(", "this_offset", ")", ")", "return", "false", ";", "pattern", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "rtvec_alloc", "(", "nregs", ")", ")", ";", "this_base", "=", "stack_pointer_rtx", ";", "for", "(", "j", "=", "0", ";", "j", "<", "(", "umips_swm_encoding", "[", "i", "]", "&", "0xf", ")", ";", "j", "++", ")", "{", "HOST_WIDE_INT", "offset", "=", "this_offset", "+", "j", "*", "UNITS_PER_WORD", ";", "mem", "=", "gen_frame_mem", "(", "SImode", ",", "plus_constant", "(", "Pmode", ",", "this_base", ",", "offset", ")", ")", ";", "unsigned", "int", "regno", "=", "(", "j", "!=", "8", ")", "?", "16", "+", "j", ":", "30", ";", "*", "mask", "&=", "~", "(", "1", "<<", "regno", ")", ";", "reg", "=", "gen_rtx_REG", "(", "SImode", ",", "regno", ")", ";", "if", "(", "fn", "==", "mips_save_reg", ")", "set", "=", "mips_frame_set", "(", "mem", ",", "reg", ")", ";", "else", "{", "set", "=", "gen_rtx_SET", "(", "VOIDmode", ",", "reg", ",", "mem", ")", ";", "mips_add_cfa_restore", "(", "reg", ")", ";", "}", "XVECEXP", "(", "pattern", ",", "0", ",", "j", ")", "=", "set", ";", "}", "if", "(", "umips_swm_encoding", "[", "i", "]", ">>", "4", ")", "{", "HOST_WIDE_INT", "offset", "=", "this_offset", "+", "j", "*", "UNITS_PER_WORD", ";", "*", "mask", "&=", "~", "(", "1", "<<", "31", ")", ";", "mem", "=", "gen_frame_mem", "(", "SImode", ",", "plus_constant", "(", "Pmode", ",", "this_base", ",", "offset", ")", ")", ";", "reg", "=", "gen_rtx_REG", "(", "SImode", ",", "31", ")", ";", "if", "(", "fn", "==", "mips_save_reg", ")", "set", "=", "mips_frame_set", "(", "mem", ",", "reg", ")", ";", "else", "{", "set", "=", "gen_rtx_SET", "(", "VOIDmode", ",", "reg", ",", "mem", ")", ";", "mips_add_cfa_restore", "(", "reg", ")", ";", "}", "XVECEXP", "(", "pattern", ",", "0", ",", "j", ")", "=", "set", ";", "}", "pattern", "=", "emit_insn", "(", "pattern", ")", ";", "if", "(", "fn", "==", "mips_save_reg", ")", "RTX_FRAME_RELATED_P", "(", "pattern", ")", "=", "1", ";", "*", "offset", "-=", "UNITS_PER_WORD", "*", "nregs", ";", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "use", "a", "microMIPS", "LWM", "or", "SWM", "instruction", "to", "save", "or", "restore", "as", "many", "GPRs", "in", "*", "MASK", "as", "possible", ".", "*", "OFFSET", "is", "the", "offset", "from", "the", "stack", "pointer", "of", "the", "topmost", "save", "slot", ".", "Remove", "from", "*", "MASK", "all", "registers", "that", "were", "handled", "using", "LWM", "and", "SWM", ".", "Update", "*", "OFFSET", "so", "that", "it", "points", "to", "the", "first", "unused", "save", "slot", "."], "TS_V_token": ["mips", "0", "0xffff0000", "0xf", "4", "1", "0", "0xf", "8", "16", "30", "1", "0", "4", "1", "31", "31", "0", "1"], "File": "mips4", "Func": "umips_build_save_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32752, "Length": 402} {"ground_truth": ["", "static", "void", "vr4130_align_insns", "(", "void", ")", "{", "struct", "mips_sim", "state", ";", "rtx_insn", "*", "insn", ",", "*", "subinsn", ",", "*", "last", ",", "*", "last2", ",", "*", "next", ";", "bool", "aligned_p", ";", "dfa_start", "(", ")", ";", "last", "=", "0", ";", "last2", "=", "0", ";", "aligned_p", "=", "true", ";", "mips_sim_init", "(", "&", "state", ",", "alloca", "(", "state_size", "(", ")", ")", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", "!=", "0", ";", "insn", "=", "next", ")", "{", "unsigned", "int", "length", ";", "next", "=", "NEXT_INSN", "(", "insn", ")", ";", "vr4130_avoid_branch_rt_conflict", "(", "insn", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", ">", "0", "&&", "USEFUL_INSN_P", "(", "insn", ")", ")", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "{", "mips_sim_wait_insn", "(", "&", "state", ",", "subinsn", ")", ";", "if", "(", "state", ".", "insns_left", "!=", "state", ".", "issue_rate", "&&", "!", "CALL_P", "(", "subinsn", ")", ")", "{", "if", "(", "subinsn", "==", "SEQ_BEGIN", "(", "insn", ")", "&&", "aligned_p", ")", "{", "gcc_assert", "(", "last2", ")", ";", "emit_insn_after", "(", "gen_nop", "(", ")", ",", "last2", ")", ";", "aligned_p", "=", "false", ";", "}", "else", "if", "(", "subinsn", "!=", "SEQ_BEGIN", "(", "insn", ")", "&&", "!", "aligned_p", ")", "{", "gcc_assert", "(", "last", ")", ";", "emit_insn_after", "(", "gen_nop", "(", ")", ",", "last", ")", ";", "aligned_p", "=", "true", ";", "}", "}", "mips_sim_issue_insn", "(", "&", "state", ",", "subinsn", ")", ";", "}", "mips_sim_finish_insn", "(", "&", "state", ",", "insn", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", ">", "0", ")", "{", "if", "(", "NONJUMP_INSN_P", "(", "SEQ_BEGIN", "(", "insn", ")", ")", "&&", "(", "recog_memoized", "(", "insn", ")", "<", "0", "||", "length", ">=", "8", ")", ")", "{", "next", "=", "emit_insn_after", "(", "gen_align", "(", "GEN_INT", "(", "3", ")", ")", ",", "insn", ")", ";", "next", "=", "NEXT_INSN", "(", "next", ")", ";", "mips_sim_next_cycle", "(", "&", "state", ")", ";", "aligned_p", "=", "true", ";", "}", "else", "if", "(", "length", "&", "4", ")", "aligned_p", "=", "!", "aligned_p", ";", "last2", "=", "last", ";", "last", "=", "insn", ";", "}", "if", "(", "LABEL_P", "(", "insn", ")", "&&", "label_to_alignment", "(", "insn", ")", ">=", "3", ")", "aligned_p", "=", "true", ";", "}", "dfa_finish", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "-mvr4130-align", ".", "Go", "through", "each", "basic", "block", "and", "simulate", "the", "processor", "pipeline", ".", "If", "we", "find", "that", "a", "pair", "of", "instructions", "could", "execute", "in", "parallel", ",", "and", "the", "first", "of", "those", "instruction", "is", "not", "8-byte", "aligned", ",", "insert", "a", "nop", "to", "make", "it", "aligned", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "0", "8", "3", "4", "3"], "File": "mips4", "Func": "vr4130_align_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32753, "Length": 340} {"ground_truth": ["", "static", "void", "mips_avoid_hazard", "(", "rtx_insn", "*", "after", ",", "rtx_insn", "*", "insn", ",", "int", "*", "hilo_delay", ",", "rtx", "*", "delayed_reg", ",", "rtx", "lo_reg", ",", "bool", "*", "fs_delay", ")", "{", "rtx", "pattern", ",", "set", ";", "int", "nops", ",", "ninsns", ";", "pattern", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "pattern", ")", "==", "ASM_INPUT", "||", "asm_noperands", "(", "pattern", ")", ">=", "0", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "ninsns", "=", "get_attr_length", "(", "insn", ")", "/", "4", ";", "if", "(", "ninsns", "==", "0", ")", "return", ";", "if", "(", "*", "hilo_delay", "<", "2", "&&", "reg_set_p", "(", "lo_reg", ",", "pattern", ")", ")", "nops", "=", "2", "-", "*", "hilo_delay", ";", "else", "if", "(", "*", "delayed_reg", "!=", "0", "&&", "reg_referenced_p", "(", "*", "delayed_reg", ",", "pattern", ")", ")", "nops", "=", "1", ";", "else", "if", "(", "*", "fs_delay", "&&", "get_attr_can_delay", "(", "insn", ")", "==", "CAN_DELAY_NO", "&&", "GET_CODE", "(", "PATTERN", "(", "after", ")", ")", "!=", "SEQUENCE", "&&", "GET_CODE", "(", "pattern", ")", "!=", "ASM_INPUT", "&&", "asm_noperands", "(", "pattern", ")", "<", "0", ")", "nops", "=", "1", ";", "else", "nops", "=", "0", ";", "*", "hilo_delay", "+=", "nops", ";", "while", "(", "nops", "--", ">", "0", ")", "emit_insn_after", "(", "gen_hazard_nop", "(", ")", ",", "after", ")", ";", "*", "hilo_delay", "+=", "ninsns", ";", "*", "delayed_reg", "=", "0", ";", "*", "fs_delay", "=", "false", ";", "if", "(", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "break", ";", "case", "HAZARD_FORBIDDEN_SLOT", ":", "if", "(", "TARGET_CB_MAYBE", ")", "*", "fs_delay", "=", "true", ";", "break", ";", "case", "HAZARD_HILO", ":", "*", "hilo_delay", "=", "0", ";", "break", ";", "case", "HAZARD_DELAY", ":", "set", "=", "single_set", "(", "insn", ")", ";", "gcc_assert", "(", "set", ")", ";", "*", "delayed_reg", "=", "SET_DEST", "(", "set", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Subroutine", "of", "mips_reorg", ".", "If", "there", "is", "a", "hazard", "between", "INSN", "and", "a", "previous", "instruction", ",", "avoid", "it", "by", "inserting", "nops", "after", "instruction", "AFTER", ".", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "describe", "the", "hazards", "that", "apply", "at", "this", "point", ".", "If", "*", "DELAYED_REG", "is", "non-null", ",", "INSN", "must", "wait", "a", "cycle", "before", "using", "the", "value", "of", "that", "register", ".", "*", "HILO_DELAY", "counts", "the", "number", "of", "instructions", "since", "the", "last", "hilo", "hazard", "(", "that", "is", ",", "the", "number", "of", "instructions", "since", "the", "last", "mflo", "or", "mfhi", ")", ".", "After", "inserting", "nops", "for", "INSN", ",", "update", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "for", "the", "next", "instruction", ".", "LO_REG", "is", "an", "rtx", "for", "the", "LO", "register", ",", "used", "in", "dependence", "checking", "."], "TS_V_token": ["mips", "0", "4", "0", "2", "2", "0", "1", "0", "1", "0", "0", "0", "0", "0"], "File": "mips5", "Func": "mips_avoid_hazard", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32754, "Length": 282} {"ground_truth": ["", "static", "void", "mips_block_move_straight", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ")", "{", "HOST_WIDE_INT", "offset", ",", "delta", ";", "unsigned", "HOST_WIDE_INT", "bits", ";", "int", "i", ";", "machine_mode", "mode", ";", "rtx", "*", "regs", ";", "if", "(", "!", "ISA_HAS_LWL_LWR", ")", "bits", "=", "MIN", "(", "BITS_PER_WORD", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ")", ";", "else", "{", "if", "(", "MEM_ALIGN", "(", "src", ")", "==", "BITS_PER_WORD", "/", "2", "&&", "MEM_ALIGN", "(", "dest", ")", "==", "BITS_PER_WORD", "/", "2", ")", "bits", "=", "BITS_PER_WORD", "/", "2", ";", "else", "bits", "=", "BITS_PER_WORD", ";", "}", "mode", "=", "mode_for_size", "(", "bits", ",", "MODE_INT", ",", "0", ")", ";", "delta", "=", "bits", "/", "BITS_PER_UNIT", ";", "regs", "=", "XALLOCAVEC", "(", "rtx", ",", "length", "/", "delta", ")", ";", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "{", "regs", "[", "i", "]", "=", "gen_reg_rtx", "(", "mode", ")", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", ">=", "bits", ")", "mips_emit_move", "(", "regs", "[", "i", "]", ",", "adjust_address", "(", "src", ",", "mode", ",", "offset", ")", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ext_as_unaligned_load", "(", "regs", "[", "i", "]", ",", "part", ",", "bits", ",", "0", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "}", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "if", "(", "MEM_ALIGN", "(", "dest", ")", ">=", "bits", ")", "mips_emit_move", "(", "adjust_address", "(", "dest", ",", "mode", ",", "offset", ")", ",", "regs", "[", "i", "]", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ins_as_unaligned_store", "(", "part", ",", "regs", "[", "i", "]", ",", "bits", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "offset", "<", "length", ")", "{", "src", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "dest", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "move_by_pieces", "(", "dest", ",", "src", ",", "length", "-", "offset", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ",", "0", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "straight-line", "code", "to", "move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", ".", "Assume", "that", "the", "areas", "do", "not", "overlap", "."], "TS_V_token": ["mips", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips5", "Func": "mips_block_move_straight", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32755, "Length": 375} {"ground_truth": ["", "static", "rtx", "mips_call_tls_get_addr", "(", "rtx", "sym", ",", "enum", "mips_symbol_type", "type", ",", "rtx", "v0", ")", "{", "rtx", "insn", ",", "loc", ",", "a0", ";", "a0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "!", "mips_tls_symbol", ")", "mips_tls_symbol", "=", "init_one_libfunc", "(", "\"__tls_get_addr\"", ")", ";", "loc", "=", "mips_unspec_address", "(", "sym", ",", "type", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "a0", ",", "gen_rtx_LO_SUM", "(", "Pmode", ",", "pic_offset_table_rtx", ",", "loc", ")", ")", ")", ";", "insn", "=", "mips_expand_call", "(", "MIPS_CALL_NORMAL", ",", "v0", ",", "mips_tls_symbol", ",", "const0_rtx", ",", "NULL_RTX", ",", "false", ")", ";", "RTL_CONST_CALL_P", "(", "insn", ")", "=", "1", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "a0", ")", ";", "insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "return", "insn", ";", "}", ""], "natrual_language": ["Return", "an", "instruction", "sequence", "that", "calls", "__tls_get_addr", ".", "SYM", "is", "the", "TLS", "symbol", "we", "are", "referencing", "and", "TYPE", "is", "the", "symbol", "type", "to", "use", "(", "either", "global", "dynamic", "or", "local", "dynamic", ")", ".", "V0", "is", "an", "RTX", "for", "the", "return", "value", "location", "."], "TS_V_token": ["mips", "\"__tls_get_addr\"", "1"], "File": "mips5", "Func": "mips_call_tls_get_addr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32756, "Length": 122} {"ground_truth": ["", "static", "void", "mips_emit_probe_stack_range", "(", "HOST_WIDE_INT", "first", ",", "HOST_WIDE_INT", "size", ")", "{", "if", "(", "TARGET_MIPS16", ")", "sorry", "(", "\"-fstack-check=specific not implemented for MIPS16\"", ")", ";", "if", "(", "first", "+", "size", "<=", "32768", ")", "{", "HOST_WIDE_INT", "i", ";", "for", "(", "i", "=", "PROBE_INTERVAL", ";", "i", "<", "size", ";", "i", "+=", "PROBE_INTERVAL", ")", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "(", "first", "+", "i", ")", ")", ")", ";", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "(", "first", "+", "size", ")", ")", ")", ";", "}", "else", "{", "HOST_WIDE_INT", "rounded_size", ";", "rtx", "r3", "=", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ";", "rtx", "r12", "=", "MIPS_PROLOGUE_TEMP2", "(", "Pmode", ")", ";", "gcc_assert", "(", "first", "<=", "32768", ")", ";", "rounded_size", "=", "ROUND_DOWN", "(", "size", ",", "PROBE_INTERVAL", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "r3", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "first", ")", ")", ")", ";", "if", "(", "rounded_size", ">", "32768", ")", "{", "emit_move_insn", "(", "r12", ",", "GEN_INT", "(", "rounded_size", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "r12", ",", "gen_rtx_MINUS", "(", "Pmode", ",", "r3", ",", "r12", ")", ")", ")", ";", "}", "else", "emit_insn", "(", "gen_rtx_SET", "(", "r12", ",", "plus_constant", "(", "Pmode", ",", "r3", ",", "-", "rounded_size", ")", ")", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_probe_stack_range", ",", "(", "r3", ",", "r3", ",", "r12", ")", ")", ")", ";", "if", "(", "size", "!=", "rounded_size", ")", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "r12", ",", "rounded_size", "-", "size", ")", ")", ";", "}", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "code", "to", "probe", "a", "range", "of", "stack", "addresses", "from", "FIRST", "to", "FIRST+SIZE", ",", "inclusive", ".", "These", "are", "offsets", "from", "the", "current", "stack", "pointer", "."], "TS_V_token": ["mips", "\"-fstack-check=specific not implemented for MIPS16\"", "32768", "32768", "32768"], "File": "mips5", "Func": "mips_emit_probe_stack_range", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32757, "Length": 235} {"ground_truth": ["", "void", "mips_expand_vector_init", "(", "rtx", "target", ",", "rtx", "vals", ")", "{", "machine_mode", "vmode", "=", "GET_MODE", "(", "target", ")", ";", "machine_mode", "imode", "=", "GET_MODE_INNER", "(", "vmode", ")", ";", "unsigned", "i", ",", "nelt", "=", "GET_MODE_NUNITS", "(", "vmode", ")", ";", "unsigned", "nvar", "=", "0", ",", "one_var", "=", "-", "1u", ";", "bool", "all_same", "=", "true", ";", "rtx", "x", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "x", "=", "XVECEXP", "(", "vals", ",", "0", ",", "i", ")", ";", "if", "(", "!", "mips_constant_elt_p", "(", "x", ")", ")", "nvar", "++", ",", "one_var", "=", "i", ";", "if", "(", "i", ">", "0", "&&", "!", "rtx_equal_p", "(", "x", ",", "XVECEXP", "(", "vals", ",", "0", ",", "0", ")", ")", ")", "all_same", "=", "false", ";", "}", "if", "(", "nvar", "==", "0", ")", "{", "emit_move_insn", "(", "target", ",", "gen_rtx_CONST_VECTOR", "(", "vmode", ",", "XVEC", "(", "vals", ",", "0", ")", ")", ")", ";", "return", ";", "}", "if", "(", "nelt", "==", "2", ")", "{", "rtx", "op0", "=", "force_reg", "(", "imode", ",", "XVECEXP", "(", "vals", ",", "0", ",", "0", ")", ")", ";", "rtx", "op1", "=", "force_reg", "(", "imode", ",", "XVECEXP", "(", "vals", ",", "0", ",", "1", ")", ")", ";", "x", "=", "gen_rtx_VEC_CONCAT", "(", "vmode", ",", "op0", ",", "op1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "target", ",", "x", ")", ")", ";", "return", ";", "}", "gcc_assert", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ";", "if", "(", "all_same", ")", "{", "mips_expand_vi_broadcast", "(", "vmode", ",", "target", ",", "XVECEXP", "(", "vals", ",", "0", ",", "0", ")", ")", ";", "return", ";", "}", "if", "(", "nvar", "==", "1", "&&", "vmode", "==", "V4HImode", ")", "{", "mips_expand_vi_loongson_one_pinsrh", "(", "target", ",", "vals", ",", "one_var", ")", ";", "return", ";", "}", "mips_expand_vi_general", "(", "vmode", ",", "imode", ",", "nelt", ",", "nvar", ",", "target", ",", "vals", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "vector", "initialization", "."], "TS_V_token": ["mips", "0", "1u", "0", "0", "0", "0", "0", "0", "0", "2", "0", "0", "0", "1", "0", "0", "1"], "File": "mips5", "Func": "mips_expand_vector_init", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32758, "Length": 282} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_pshufh", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "mask", ";", "rtx", "rmask", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ")", "return", "false", ";", "if", "(", "d", "->", "vmode", "!=", "V4HImode", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "for", "(", "i", "=", "mask", "=", "0", ";", "i", "<", "4", ";", "i", "++", ")", "mask", "|=", "(", "d", "->", "perm", "[", "i", "]", "&", "3", ")", "<<", "(", "i", "*", "2", ")", ";", "rmask", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "mask", ")", ")", ";", "if", "(", "d", "->", "one_vector_p", ")", "emit_insn", "(", "gen_loongson_pshufh", "(", "d", "->", "target", ",", "d", "->", "op0", ",", "rmask", ")", ")", ";", "else", "{", "rtx", "t0", ",", "t1", ",", "x", ",", "merge", ",", "rmerge", "[", "4", "]", ";", "t0", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t1", ",", "d", "->", "op1", ",", "rmask", ")", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t0", ",", "d", "->", "op0", ",", "rmask", ")", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "4", ";", "++", "i", ")", "rmerge", "[", "i", "]", "=", "(", "d", "->", "perm", "[", "i", "]", "&", "4", "?", "constm1_rtx", ":", "const0_rtx", ")", ";", "merge", "=", "gen_rtx_CONST_VECTOR", "(", "V4HImode", ",", "gen_rtvec_v", "(", "4", ",", "rmerge", ")", ")", ";", "merge", "=", "force_reg", "(", "V4HImode", ",", "merge", ")", ";", "x", "=", "gen_rtx_AND", "(", "V4HImode", ",", "merge", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "t1", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_NOT", "(", "V4HImode", ",", "merge", ")", ";", "x", "=", "gen_rtx_AND", "(", "V4HImode", ",", "x", ",", "t0", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "t0", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_IOR", "(", "V4HImode", ",", "t0", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "d", "->", "target", ",", "x", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "patterns", "for", "the", "Loongson", "PSHUFH", "instruction", "."], "TS_V_token": ["mips", "0", "4", "3", "2", "4", "0", "4", "4", "4"], "File": "mips5", "Func": "mips_expand_vpc_loongson_pshufh", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32759, "Length": 311} {"ground_truth": ["", "static", "bool", "mips_interrupt_extra_call_saved_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "(", "ISA_HAS_HILO", "||", "TARGET_DSP", ")", "&&", "MD_REG_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "TARGET_DSP", "&&", "DSP_ACC_REG_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "cfun", "->", "machine", "->", "use_shadow_register_set", "==", "SHADOW_SET_NO", ")", "{", "if", "(", "regno", "==", "GP_REG_FIRST", ")", "return", "false", ";", "if", "(", "KERNEL_REG_P", "(", "regno", ")", ")", "return", "false", ";", "if", "(", "regno", "==", "STACK_POINTER_REGNUM", ")", "return", "false", ";", "return", "call_really_used_regs", "[", "regno", "]", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "REGNO", "is", "a", "register", "that", "is", "ordinarily", "call-clobbered", "but", "must", "nevertheless", "be", "preserved", "by", "an", "interrupt", "handler", "."], "TS_V_token": ["mips"], "File": "mips5", "Func": "mips_interrupt_extra_call_saved_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32760, "Length": 92} {"ground_truth": ["", "static", "int", "mips_issue_rate", "(", "void", ")", "{", "switch", "(", "mips_tune", ")", "{", "case", "PROCESSOR_74KC", ":", "case", "PROCESSOR_74KF2_1", ":", "case", "PROCESSOR_74KF1_1", ":", "case", "PROCESSOR_74KF3_2", ":", "case", "PROCESSOR_R10000", ":", "return", "4", ";", "case", "PROCESSOR_20KC", ":", "case", "PROCESSOR_R4130", ":", "case", "PROCESSOR_R5400", ":", "case", "PROCESSOR_R5500", ":", "case", "PROCESSOR_R5900", ":", "case", "PROCESSOR_R7000", ":", "case", "PROCESSOR_R9000", ":", "case", "PROCESSOR_OCTEON", ":", "case", "PROCESSOR_OCTEON2", ":", "case", "PROCESSOR_OCTEON3", ":", "case", "PROCESSOR_I6400", ":", "return", "2", ";", "case", "PROCESSOR_SB1", ":", "case", "PROCESSOR_SB1A", ":", "return", "3", ";", "case", "PROCESSOR_LOONGSON_2E", ":", "case", "PROCESSOR_LOONGSON_2F", ":", "case", "PROCESSOR_LOONGSON_3A", ":", "case", "PROCESSOR_P5600", ":", "return", "4", ";", "case", "PROCESSOR_XLP", ":", "return", "(", "reload_completed", "?", "4", ":", "3", ")", ";", "default", ":", "return", "1", ";", "}", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "that", "can", "be", "issued", "per", "cycle", "."], "TS_V_token": ["mips", "4", "2", "3", "4", "4", "3", "1"], "File": "mips5", "Func": "mips_issue_rate", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32761, "Length": 109} {"ground_truth": ["", "static", "int", "mips_multipass_dfa_lookahead", "(", "void", ")", "{", "if", "(", "TUNE_SB1", ")", "return", "4", ";", "if", "(", "TUNE_LOONGSON_2EF", "||", "TUNE_LOONGSON_3A", ")", "return", "4", ";", "if", "(", "TUNE_OCTEON", ")", "return", "2", ";", "if", "(", "TUNE_P5600", "||", "TUNE_I6400", ")", "return", "4", ";", "return", "0", ";", "}", ""], "natrual_language": ["Implements", "TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD", ".", "This", "should", "be", "as", "wide", "as", "the", "scheduling", "freedom", "in", "the", "DFA", "."], "TS_V_token": ["mips", "4", "4", "2", "4", "0"], "File": "mips5", "Func": "mips_multipass_dfa_lookahead", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32762, "Length": 43} {"ground_truth": ["", "const", "char", "*", "mips_output_jump", "(", "rtx", "*", "operands", ",", "int", "target_opno", ",", "int", "size_opno", ",", "bool", "link_p", ")", "{", "static", "char", "buffer", "[", "300", "]", ";", "char", "*", "s", "=", "buffer", ";", "bool", "reg_p", "=", "REG_P", "(", "operands", "[", "target_opno", "]", ")", ";", "const", "char", "*", "and_link", "=", "link_p", "?", "\"al\"", ":", "\"\"", ";", "const", "char", "*", "reg", "=", "reg_p", "?", "\"r\"", ":", "\"\"", ";", "const", "char", "*", "compact", "=", "\"\"", ";", "const", "char", "*", "nop", "=", "\"%/\"", ";", "const", "char", "*", "short_delay", "=", "link_p", "?", "\"%!\"", ":", "\"\"", ";", "const", "char", "*", "insn_name", "=", "TARGET_CB_NEVER", "||", "reg_p", "?", "\"j\"", ":", "\"b\"", ";", "if", "(", "!", "final_sequence", "&&", "(", "TARGET_CB_MAYBE", "||", "(", "ISA_HAS_JRC", "&&", "!", "link_p", "&&", "reg_p", ")", ")", ")", "{", "compact", "=", "\"c\"", ";", "nop", "=", "\"\"", ";", "}", "if", "(", "TARGET_USE_GOT", "&&", "!", "TARGET_EXPLICIT_RELOCS", ")", "sprintf", "(", "s", ",", "\"%%*%s%s\\t%%%d%%/\"", ",", "insn_name", ",", "and_link", ",", "target_opno", ")", ";", "else", "{", "if", "(", "!", "reg_p", "&&", "TARGET_ABICALLS_PIC2", ")", "s", "+=", "sprintf", "(", "s", ",", "\".option\\tpic0\\n\\t\"", ")", ";", "if", "(", "reg_p", "&&", "mips_get_pic_call_symbol", "(", "operands", ",", "size_opno", ")", ")", "{", "s", "+=", "sprintf", "(", "s", ",", "\"%%*.reloc\\t1f,R_MIPS_JALR,%%%d\\n1:\\t\"", ",", "size_opno", ")", ";", "short_delay", "=", "\"\"", ";", "}", "else", "s", "+=", "sprintf", "(", "s", ",", "\"%%*\"", ")", ";", "s", "+=", "sprintf", "(", "s", ",", "\"%s%s%s%s%s\\t%%%d%s\"", ",", "insn_name", ",", "and_link", ",", "reg", ",", "compact", ",", "short_delay", ",", "target_opno", ",", "nop", ")", ";", "if", "(", "!", "reg_p", "&&", "TARGET_ABICALLS_PIC2", ")", "s", "+=", "sprintf", "(", "s", ",", "\"\\n\\t.option\\tpic2\"", ")", ";", "}", "return", "buffer", ";", "}", ""], "natrual_language": ["Return", "the", "asm", "template", "for", "a", "call", ".", "OPERANDS", "are", "the", "operands", ",", "TARGET_OPNO", "is", "the", "operand", "number", "of", "the", "target", ".", "SIZE_OPNO", "is", "the", "operand", "number", "of", "the", "argument", "size", "operand", "that", "can", "optionally", "hold", "the", "call", "attributes", ".", "If", "SIZE_OPNO", "is", "not", "-1", "and", "the", "call", "is", "indirect", ",", "use", "the", "function", "symbol", "from", "the", "call", "attributes", "to", "attach", "a", "R_MIPS_JALR", "relocation", "to", "the", "call", ".", "LINK_P", "indicates", "whether", "the", "jump", "is", "a", "call", "and", "needs", "to", "set", "the", "link", "register", ".", "When", "generating", "GOT", "code", "without", "explicit", "relocation", "operators", ",", "all", "calls", "should", "use", "assembly", "macros", ".", "Otherwise", ",", "all", "indirect", "calls", "should", "use", "``", "jr", "''", "or", "``", "jalr", "''", ";", "we", "will", "arrange", "to", "restore", "$", "gp", "afterwards", "if", "necessary", ".", "Finally", ",", "we", "can", "only", "generate", "direct", "calls", "for", "-mabicalls", "by", "temporarily", "switching", "to", "non-PIC", "mode", ".", "For", "microMIPS", "jal", "(", "r", ")", ",", "we", "try", "to", "generate", "jal", "(", "r", ")", "s", "when", "a", "16-bit", "instruction", "is", "in", "the", "delay", "slot", "of", "jal", "(", "r", ")", ".", "Where", "compact", "branches", "are", "available", ",", "we", "try", "to", "use", "them", "if", "the", "delay", "slot", "has", "a", "NOP", "(", "or", "equivalently", "delay", "slots", "were", "not", "enabled", "for", "the", "instruction", "anyway", ")", "."], "TS_V_token": ["mips", "300", "\"al\"", "\"\"", "\"r\"", "\"\"", "\"\"", "\"%/\"", "\"%!\"", "\"\"", "\"j\"", "\"b\"", "\"c\"", "\"\"", "\"%%*%s%s\\t%%%d%%/\"", "\".option\\tpic0\\n\\t\"", "\"%%*.reloc\\t1f,R_MIPS_JALR,%%%d\\n1:\\t\"", "\"\"", "\"%%*\"", "\"%s%s%s%s%s\\t%%%d%s\"", "\"\\n\\t.option\\tpic2\""], "File": "mips5", "Func": "mips_output_jump", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32763, "Length": 251} {"ground_truth": ["", "static", "void", "mips_setup_incoming_varargs", "(", "cumulative_args_t", "cum", ",", "machine_mode", "mode", ",", "tree", "type", ",", "int", "*", "pretend_size", "ATTRIBUTE_UNUSED", ",", "int", "no_rtl", ")", "{", "CUMULATIVE_ARGS", "local_cum", ";", "int", "gp_saved", ",", "fp_saved", ";", "local_cum", "=", "*", "get_cumulative_args", "(", "cum", ")", ";", "mips_function_arg_advance", "(", "pack_cumulative_args", "(", "&", "local_cum", ")", ",", "mode", ",", "type", ",", "true", ")", ";", "gp_saved", "=", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_gprs", ";", "fp_saved", "=", "(", "EABI_FLOAT_VARARGS_P", "?", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_fprs", ":", "0", ")", ";", "if", "(", "!", "no_rtl", ")", "{", "if", "(", "gp_saved", ">", "0", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "-", "gp_saved", "*", "UNITS_PER_WORD", ")", ";", "mem", "=", "gen_frame_mem", "(", "BLKmode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "move_block_from_reg", "(", "local_cum", ".", "num_gprs", "+", "GP_ARG_FIRST", ",", "mem", ",", "gp_saved", ")", ";", "}", "if", "(", "fp_saved", ">", "0", ")", "{", "machine_mode", "mode", ";", "int", "off", ",", "i", ";", "off", "=", "ROUND_DOWN", "(", "-", "gp_saved", "*", "UNITS_PER_WORD", ",", "UNITS_PER_FPVALUE", ")", ";", "off", "-=", "fp_saved", "*", "UNITS_PER_FPREG", ";", "mode", "=", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ";", "for", "(", "i", "=", "local_cum", ".", "num_fprs", ";", "i", "<", "MAX_ARGS_IN_REGISTERS", ";", "i", "+=", "MAX_FPRS_PER_FMT", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "off", ")", ";", "mem", "=", "gen_frame_mem", "(", "mode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "mips_emit_move", "(", "mem", ",", "gen_rtx_REG", "(", "mode", ",", "FP_ARG_FIRST", "+", "i", ")", ")", ";", "off", "+=", "UNITS_PER_HWFPVALUE", ";", "}", "}", "}", "if", "(", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "==", "0", ")", "cfun", "->", "machine", "->", "varargs_size", "=", "(", "gp_saved", "*", "UNITS_PER_WORD", "+", "fp_saved", "*", "UNITS_PER_FPREG", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SETUP_INCOMING_VARARGS", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips5", "Func": "mips_setup_incoming_varargs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32764, "Length": 286} {"ground_truth": ["", "static", "void", "mips_set_compression_mode", "(", "unsigned", "int", "compression_mode", ")", "{", "if", "(", "compression_mode", "==", "old_compression_mode", ")", "return", ";", "target_flags", "=", "mips_base_target_flags", ";", "flag_schedule_insns", "=", "mips_base_schedule_insns", ";", "flag_reorder_blocks_and_partition", "=", "mips_base_reorder_blocks_and_partition", ";", "flag_move_loop_invariants", "=", "mips_base_move_loop_invariants", ";", "align_loops", "=", "mips_base_align_loops", ";", "align_jumps", "=", "mips_base_align_jumps", ";", "align_functions", "=", "mips_base_align_functions", ";", "target_flags", "&=", "~", "(", "MASK_MIPS16", "|", "MASK_MICROMIPS", ")", ";", "target_flags", "|=", "compression_mode", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "target_flags", "|=", "MASK_MIPS16", ";", "target_flags", "&=", "~", "MASK_SYNCI", ";", "flag_schedule_insns", "=", "0", ";", "flag_reorder_blocks_and_partition", "=", "0", ";", "flag_move_loop_invariants", "=", "0", ";", "target_flags", "|=", "MASK_EXPLICIT_RELOCS", ";", "targetm", ".", "min_anchor_offset", "=", "0", ";", "targetm", ".", "max_anchor_offset", "=", "127", ";", "targetm", ".", "const_anchor", "=", "0", ";", "target_flags", "&=", "~", "MASK_RELAX_PIC_CALLS", ";", "target_flags", "&=", "~", "MASK_FIX_R4000", ";", "if", "(", "flag_pic", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"MIPS16 PIC for ABIs other than o32 and o64\"", ")", ";", "if", "(", "TARGET_XGOT", ")", "sorry", "(", "\"MIPS16 -mxgot code\"", ")", ";", "if", "(", "TARGET_HARD_FLOAT_ABI", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"hard-float MIPS16 code for ABIs other than o32 and o64\"", ")", ";", "}", "else", "{", "if", "(", "TARGET_MICROMIPS", ")", "target_flags", "&=", "~", "MASK_BRANCHLIKELY", ";", "if", "(", "TARGET_64BIT", ")", "{", "if", "(", "align_loops", "==", "0", ")", "align_loops", "=", "8", ";", "if", "(", "align_jumps", "==", "0", ")", "align_jumps", "=", "8", ";", "if", "(", "align_functions", "==", "0", ")", "align_functions", "=", "8", ";", "}", "targetm", ".", "min_anchor_offset", "=", "-", "32768", ";", "targetm", ".", "max_anchor_offset", "=", "32767", ";", "targetm", ".", "const_anchor", "=", "0x8000", ";", "}", "mips_init_relocs", "(", ")", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "if", "(", "!", "mips16_globals", ")", "mips16_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "mips16_globals", ")", ";", "}", "else", "if", "(", "compression_mode", "&", "MASK_MICROMIPS", ")", "{", "if", "(", "!", "micromips_globals", ")", "micromips_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "micromips_globals", ")", ";", "}", "else", "restore_target_globals", "(", "&", "default_target_globals", ")", ";", "old_compression_mode", "=", "compression_mode", ";", "}", ""], "natrual_language": ["Set", "up", "the", "target-dependent", "global", "state", "for", "ISA", "mode", "COMPRESSION_MODE", ",", "which", "is", "either", "MASK_MIPS16", "or", "MASK_MICROMIPS", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "127", "0", "\"MIPS16 PIC for ABIs other than o32 and o64\"", "\"MIPS16 -mxgot code\"", "\"hard-float MIPS16 code for ABIs other than o32 and o64\"", "0", "8", "0", "8", "0", "8", "32768", "32767", "0x8000"], "File": "mips5", "Func": "mips_set_compression_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32765, "Length": 286} {"ground_truth": ["", "mips_va_start", "(", "valist", ",", "nextarg", ")", "{", "\\", "if", "(", "TARGET_MIPS16", ")", "\\", "sorry", "(", "\"mips16 function profiling\"", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\t.set\\tnoat\\n\"", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\tmove\\t%s,%s\\t\\t# save current return address\\n\"", ",", "\\", "reg_names", "[", "GP_REG_FIRST", "+", "1", "]", ",", "reg_names", "[", "GP_REG_FIRST", "+", "31", "]", ")", ";", "\\", "if", "(", "!", "TARGET_NEWABI", ")", "\\", "{", "\\", "fprintf", "(", "FILE", ",", "\\", "\"\\t%s\\t%s,%s,%d\\t\\t# _mcount pops 2 words from stack\\n\"", ",", "\\", "TARGET_64BIT", "?", "\"dsubu\"", ":", "\"subu\"", ",", "\\", "reg_names", "[", "STACK_POINTER_REGNUM", "]", ",", "\\", "reg_names", "[", "STACK_POINTER_REGNUM", "]", ",", "\\", "Pmode", "==", "DImode", "?", "16", ":", "8", ")", ";", "\\", "}", "\\", "fprintf", "(", "FILE", ",", "\"\\tjal\\t_mcount\\n\"", ")", ";", "\\", "fprintf", "(", "FILE", ",", "\"\\t.set\\tat\\n\"", ")", ";", "\\", "}", ""], "natrual_language": ["Implement", "va_start", "."], "TS_V_token": ["mips", "\"mips16 function profiling\"", "\"\\t.set\\tnoat\\n\"", "\"\\tmove\\t%s,%s\\t\\t# save current return address\\n\"", "1", "31", "\"\\t%s\\t%s,%s,%d\\t\\t# _mcount pops 2 words from stack\\n\"", "\"dsubu\"", "\"subu\"", "16", "8", "\"\\tjal\\t_mcount\\n\"", "\"\\t.set\\tat\\n\""], "File": "mips5", "Func": "mips_va_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32766, "Length": 114} {"ground_truth": ["", "static", "bool", "r10k_safe_mem_expr_p", "(", "tree", "expr", ",", "unsigned", "HOST_WIDE_INT", "offset", ")", "{", "HOST_WIDE_INT", "bitoffset", ",", "bitsize", ";", "tree", "inner", ",", "var_offset", ";", "machine_mode", "mode", ";", "int", "unsigned_p", ",", "reverse_p", ",", "volatile_p", ";", "inner", "=", "get_inner_reference", "(", "expr", ",", "&", "bitsize", ",", "&", "bitoffset", ",", "&", "var_offset", ",", "&", "mode", ",", "&", "unsigned_p", ",", "&", "reverse_p", ",", "&", "volatile_p", ",", "false", ")", ";", "if", "(", "!", "DECL_P", "(", "inner", ")", "||", "!", "DECL_SIZE_UNIT", "(", "inner", ")", "||", "var_offset", ")", "return", "false", ";", "offset", "+=", "bitoffset", "/", "BITS_PER_UNIT", ";", "return", "offset", "<", "tree_to_uhwi", "(", "DECL_SIZE_UNIT", "(", "inner", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "MEM", "with", "MEM_EXPR", "EXPR", "and", "MEM_OFFSET", "OFFSET", "is", "an", "in-range", "access", "to", "an", "automatic", "variable", ",", "or", "to", "an", "object", "with", "a", "link-time-constant", "address", "."], "TS_V_token": ["mips"], "File": "mips5", "Func": "r10k_safe_mem_expr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32767, "Length": 99} {"ground_truth": ["", "static", "unsigned", "int", "mips_autovectorize_vector_sizes", "(", "void", ")", "{", "return", "ISA_HAS_MSA", "?", "16", ":", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES", "."], "TS_V_token": ["mips", "16", "0"], "File": "mips6", "Func": "mips_autovectorize_vector_sizes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32768, "Length": 16} {"ground_truth": ["", "bool", "mips_cannot_change_mode_class", "(", "machine_mode", "from", ",", "machine_mode", "to", ",", "enum", "reg_class", "rclass", ")", "{", "if", "(", "GET_MODE_SIZE", "(", "from", ")", "==", "8", "&&", "GET_MODE_SIZE", "(", "to", ")", "==", "8", "&&", "INTEGRAL_MODE_P", "(", "from", ")", "&&", "INTEGRAL_MODE_P", "(", "to", ")", ")", "return", "false", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "from", ")", "&&", "MSA_SUPPORTED_MODE_P", "(", "to", ")", ")", "return", "false", ";", "return", "reg_classes_intersect_p", "(", "FP_REGS", ",", "rclass", ")", ";", "}", ""], "natrual_language": ["Implement", "CANNOT_CHANGE_MODE_CLASS", "."], "TS_V_token": ["mips", "8", "8"], "File": "mips6", "Func": "mips_cannot_change_mode_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32769, "Length": 67} {"ground_truth": ["", "int", "mips_class_max_nregs", "(", "enum", "reg_class", "rclass", ",", "machine_mode", "mode", ")", "{", "int", "size", ";", "HARD_REG_SET", "left", ";", "size", "=", "0x8000", ";", "COPY_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "rclass", "]", ")", ";", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ")", "{", "if", "(", "HARD_REGNO_MODE_OK", "(", "ST_REG_FIRST", ",", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "4", ")", ";", "AND_COMPL_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ";", "}", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ")", "{", "if", "(", "HARD_REGNO_MODE_OK", "(", "FP_REG_FIRST", ",", "mode", ")", ")", "{", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_MSA_REG", ")", ";", "else", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_FPREG", ")", ";", "}", "AND_COMPL_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ";", "}", "if", "(", "!", "hard_reg_set_empty_p", "(", "left", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_WORD", ")", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "size", "-", "1", ")", "/", "size", ";", "}", ""], "natrual_language": ["Implement", "CLASS_MAX_NREGS", ".", "Usually", "all", "registers", "are", "word-sized", ".", "The", "only", "supported", "exception", "is", "-mgp64", "-msingle-float", ",", "which", "has", "64-bit", "words", "but", "32-bit", "float", "registers", ".", "A", "word-based", "calculation", "is", "correct", "even", "in", "that", "case", ",", "since", "-msingle-float", "disallows", "multi-FPR", "values", ".", "The", "FP", "status", "registers", "are", "an", "exception", "to", "this", "rule", ".", "They", "are", "always", "4", "bytes", "wide", "as", "they", "only", "hold", "condition", "code", "modes", ",", "and", "CCmode", "is", "always", "considered", "to", "be", "4", "bytes", "wide", "."], "TS_V_token": ["mips", "0x8000", "4", "1"], "File": "mips6", "Func": "mips_class_max_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32770, "Length": 181} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin", "(", "tree", "exp", ",", "rtx", "target", ",", "rtx", "subtarget", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ",", "int", "ignore", ")", "{", "tree", "fndecl", ";", "unsigned", "int", "fcode", ",", "avail", ";", "const", "struct", "mips_builtin_description", "*", "d", ";", "fndecl", "=", "TREE_OPERAND", "(", "CALL_EXPR_FN", "(", "exp", ")", ",", "0", ")", ";", "fcode", "=", "DECL_FUNCTION_CODE", "(", "fndecl", ")", ";", "gcc_assert", "(", "fcode", "<", "ARRAY_SIZE", "(", "mips_builtins", ")", ")", ";", "d", "=", "&", "mips_builtins", "[", "fcode", "]", ";", "avail", "=", "d", "->", "avail", "(", ")", ";", "gcc_assert", "(", "avail", "!=", "0", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "!", "(", "avail", "&", "BUILTIN_AVAIL_MIPS16", ")", ")", "{", "error", "(", "\"built-in function %qE not supported for MIPS16\"", ",", "DECL_NAME", "(", "fndecl", ")", ")", ";", "return", "ignore", "?", "const0_rtx", ":", "CONST0_RTX", "(", "mode", ")", ";", "}", "switch", "(", "d", "->", "builtin_type", ")", "{", "case", "MIPS_BUILTIN_DIRECT", ":", "return", "mips_expand_builtin_direct", "(", "d", "->", "icode", ",", "target", ",", "exp", ",", "true", ")", ";", "case", "MIPS_BUILTIN_DIRECT_NO_TARGET", ":", "return", "mips_expand_builtin_direct", "(", "d", "->", "icode", ",", "target", ",", "exp", ",", "false", ")", ";", "case", "MIPS_BUILTIN_MOVT", ":", "case", "MIPS_BUILTIN_MOVF", ":", "return", "mips_expand_builtin_movtf", "(", "d", "->", "builtin_type", ",", "d", "->", "icode", ",", "d", "->", "cond", ",", "target", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_CMP_ANY", ":", "case", "MIPS_BUILTIN_CMP_ALL", ":", "case", "MIPS_BUILTIN_CMP_UPPER", ":", "case", "MIPS_BUILTIN_CMP_LOWER", ":", "case", "MIPS_BUILTIN_CMP_SINGLE", ":", "return", "mips_expand_builtin_compare", "(", "d", "->", "builtin_type", ",", "d", "->", "icode", ",", "d", "->", "cond", ",", "target", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_MSA_TEST_BRANCH", ":", "return", "mips_expand_builtin_msa_test_branch", "(", "d", "->", "icode", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_BPOSGE32", ":", "return", "mips_expand_builtin_bposge", "(", "d", "->", "builtin_type", ",", "target", ")", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Expand", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_EXPAND_BUILTIN", "."], "TS_V_token": ["mips", "0", "0", "\"built-in function %qE not supported for MIPS16\""], "File": "mips6", "Func": "mips_expand_builtin", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32771, "Length": 255} {"ground_truth": ["", "static", "void", "mips_expand_msa_cmp", "(", "rtx", "dest", ",", "enum", "rtx_code", "cond", ",", "rtx", "op0", ",", "rtx", "op1", ")", "{", "machine_mode", "cmp_mode", "=", "GET_MODE", "(", "op0", ")", ";", "int", "unspec", "=", "-", "1", ";", "bool", "negate", "=", "false", ";", "switch", "(", "cmp_mode", ")", "{", "case", "V16QImode", ":", "case", "V8HImode", ":", "case", "V4SImode", ":", "case", "V2DImode", ":", "switch", "(", "cond", ")", "{", "case", "NE", ":", "cond", "=", "reverse_condition", "(", "cond", ")", ";", "negate", "=", "true", ";", "break", ";", "case", "EQ", ":", "case", "LT", ":", "case", "LE", ":", "case", "LTU", ":", "case", "LEU", ":", "break", ";", "case", "GE", ":", "case", "GT", ":", "case", "GEU", ":", "case", "GTU", ":", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "cond", "=", "swap_condition", "(", "cond", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "mips_emit_binary", "(", "cond", ",", "dest", ",", "op0", ",", "op1", ")", ";", "if", "(", "negate", ")", "emit_move_insn", "(", "dest", ",", "gen_rtx_NOT", "(", "GET_MODE", "(", "dest", ")", ",", "dest", ")", ")", ";", "break", ";", "case", "V4SFmode", ":", "case", "V2DFmode", ":", "switch", "(", "cond", ")", "{", "case", "UNORDERED", ":", "case", "ORDERED", ":", "case", "EQ", ":", "case", "NE", ":", "case", "UNEQ", ":", "case", "UNLE", ":", "case", "UNLT", ":", "break", ";", "case", "LTGT", ":", "cond", "=", "NE", ";", "break", ";", "case", "UNGE", ":", "cond", "=", "UNLE", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "case", "UNGT", ":", "cond", "=", "UNLT", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "case", "LE", ":", "unspec", "=", "UNSPEC_MSA_FSLE", ";", "break", ";", "case", "LT", ":", "unspec", "=", "UNSPEC_MSA_FSLT", ";", "break", ";", "case", "GE", ":", "unspec", "=", "UNSPEC_MSA_FSLE", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "case", "GT", ":", "unspec", "=", "UNSPEC_MSA_FSLT", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "unspec", "<", "0", ")", "mips_emit_binary", "(", "cond", ",", "dest", ",", "op0", ",", "op1", ")", ";", "else", "{", "rtx", "x", "=", "gen_rtx_UNSPEC", "(", "GET_MODE", "(", "dest", ")", ",", "gen_rtvec", "(", "2", ",", "op0", ",", "op1", ")", ",", "unspec", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "x", ")", ")", ";", "}", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Generate", "RTL", "for", "comparing", "CMP_OP0", "and", "CMP_OP1", "using", "condition", "COND", "and", "store", "the", "result", "-1", "or", "0", "in", "DEST", "."], "TS_V_token": ["mips", "1", "0", "2"], "File": "mips6", "Func": "mips_expand_msa_cmp", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32772, "Length": 365} {"ground_truth": ["", "void", "mips_expand_vec_cond_expr", "(", "machine_mode", "mode", ",", "machine_mode", "vimode", ",", "rtx", "*", "operands", ")", "{", "rtx", "cond", "=", "operands", "[", "3", "]", ";", "rtx", "cmp_op0", "=", "operands", "[", "4", "]", ";", "rtx", "cmp_op1", "=", "operands", "[", "5", "]", ";", "rtx", "cmp_res", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "mips_expand_msa_cmp", "(", "cmp_res", ",", "GET_CODE", "(", "cond", ")", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "if", "(", "operands", "[", "1", "]", "==", "CONSTM1_RTX", "(", "vimode", ")", "&&", "operands", "[", "2", "]", "==", "CONST0_RTX", "(", "vimode", ")", ")", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "cmp_res", ")", ";", "else", "{", "rtx", "src1", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "rtx", "src2", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "rtx", "mask", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "rtx", "bsel", ";", "emit_move_insn", "(", "mask", ",", "cmp_res", ")", ";", "if", "(", "register_operand", "(", "operands", "[", "1", "]", ",", "mode", ")", ")", "{", "rtx", "xop1", "=", "operands", "[", "1", "]", ";", "if", "(", "mode", "!=", "vimode", ")", "{", "xop1", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "emit_move_insn", "(", "xop1", ",", "gen_rtx_SUBREG", "(", "vimode", ",", "operands", "[", "1", "]", ",", "0", ")", ")", ";", "}", "emit_move_insn", "(", "src1", ",", "xop1", ")", ";", "}", "else", "{", "gcc_assert", "(", "operands", "[", "1", "]", "==", "CONSTM1_RTX", "(", "vimode", ")", ")", ";", "emit_move_insn", "(", "src1", ",", "mask", ")", ";", "}", "if", "(", "register_operand", "(", "operands", "[", "2", "]", ",", "mode", ")", ")", "{", "rtx", "xop2", "=", "operands", "[", "2", "]", ";", "if", "(", "mode", "!=", "vimode", ")", "{", "xop2", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "emit_move_insn", "(", "xop2", ",", "gen_rtx_SUBREG", "(", "vimode", ",", "operands", "[", "2", "]", ",", "0", ")", ")", ";", "}", "emit_move_insn", "(", "src2", ",", "xop2", ")", ";", "}", "else", "{", "gcc_assert", "(", "operands", "[", "2", "]", "==", "CONST0_RTX", "(", "mode", ")", ")", ";", "emit_move_insn", "(", "src2", ",", "mask", ")", ";", "}", "bsel", "=", "gen_rtx_IOR", "(", "vimode", ",", "gen_rtx_AND", "(", "vimode", ",", "gen_rtx_NOT", "(", "vimode", ",", "mask", ")", ",", "src2", ")", ",", "gen_rtx_AND", "(", "vimode", ",", "mask", ",", "src1", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "mask", ",", "bsel", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_rtx_SUBREG", "(", "mode", ",", "mask", ",", "0", ")", ")", ";", "}", "}", ""], "natrual_language": ["Expand", "VEC_COND_EXPR", ",", "where", ":", "MODE", "is", "mode", "of", "the", "result", "VIMODE", "equivalent", "integer", "mode", "OPERANDS", "operands", "of", "VEC_COND_EXPR", "."], "TS_V_token": ["mips", "3", "4", "5", "1", "2", "0", "1", "1", "1", "0", "1", "2", "2", "2", "0", "2", "0", "0"], "File": "mips6", "Func": "mips_expand_vec_cond_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32773, "Length": 355} {"ground_truth": ["", "bool", "mips_expand_vec_perm_const", "(", "rtx", "operands", "[", "4", "]", ")", "{", "struct", "expand_vec_perm_d", "d", ";", "int", "i", ",", "nelt", ",", "which", ";", "unsigned", "char", "orig_perm", "[", "MAX_VECT_LEN", "]", ";", "rtx", "sel", ";", "bool", "ok", ";", "d", ".", "target", "=", "operands", "[", "0", "]", ";", "d", ".", "op0", "=", "operands", "[", "1", "]", ";", "d", ".", "op1", "=", "operands", "[", "2", "]", ";", "sel", "=", "operands", "[", "3", "]", ";", "d", ".", "vmode", "=", "GET_MODE", "(", "d", ".", "target", ")", ";", "gcc_assert", "(", "VECTOR_MODE_P", "(", "d", ".", "vmode", ")", ")", ";", "d", ".", "nelt", "=", "nelt", "=", "GET_MODE_NUNITS", "(", "d", ".", "vmode", ")", ";", "d", ".", "testing_p", "=", "false", ";", "memset", "(", "orig_perm", ",", "0", ",", "MAX_VECT_LEN", ")", ";", "for", "(", "i", "=", "which", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "rtx", "e", "=", "XVECEXP", "(", "sel", ",", "0", ",", "i", ")", ";", "int", "ei", "=", "INTVAL", "(", "e", ")", "&", "(", "2", "*", "nelt", "-", "1", ")", ";", "which", "|=", "(", "ei", "<", "nelt", "?", "1", ":", "2", ")", ";", "orig_perm", "[", "i", "]", "=", "ei", ";", "}", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "switch", "(", "which", ")", "{", "default", ":", "gcc_unreachable", "(", ")", ";", "case", "3", ":", "d", ".", "one_vector_p", "=", "false", ";", "if", "(", "!", "rtx_equal_p", "(", "d", ".", "op0", ",", "d", ".", "op1", ")", ")", "break", ";", "case", "2", ":", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "d", ".", "perm", "[", "i", "]", "&=", "nelt", "-", "1", ";", "d", ".", "op0", "=", "d", ".", "op1", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "case", "1", ":", "d", ".", "op1", "=", "d", ".", "op0", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "}", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "if", "(", "!", "ok", "&&", "which", "==", "3", ")", "{", "d", ".", "op0", "=", "operands", "[", "1", "]", ";", "d", ".", "op1", "=", "operands", "[", "2", "]", ";", "d", ".", "one_vector_p", "=", "false", ";", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "}", "return", "ok", ";", "}", ""], "natrual_language": ["Expand", "a", "vec_perm_const", "pattern", "."], "TS_V_token": ["mips", "4", "0", "1", "2", "3", "0", "0", "0", "2", "1", "1", "2", "3", "2", "0", "1", "1", "3", "1", "2"], "File": "mips6", "Func": "mips_expand_vec_perm_const", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32774, "Length": 357} {"ground_truth": ["", "void", "mips_expand_vec_unpack", "(", "rtx", "operands", "[", "2", "]", ",", "bool", "unsigned_p", ",", "bool", "high_p", ")", "{", "machine_mode", "imode", "=", "GET_MODE", "(", "operands", "[", "1", "]", ")", ";", "rtx", "(", "*", "unpack", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "(", "*", "cmpFunc", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "tmp", ",", "dest", ",", "zero", ";", "if", "(", "ISA_HAS_MSA", ")", "{", "switch", "(", "imode", ")", "{", "case", "V4SImode", ":", "if", "(", "BYTES_BIG_ENDIAN", "!=", "high_p", ")", "unpack", "=", "gen_msa_ilvl_w", ";", "else", "unpack", "=", "gen_msa_ilvr_w", ";", "cmpFunc", "=", "gen_msa_clt_s_w", ";", "break", ";", "case", "V8HImode", ":", "if", "(", "BYTES_BIG_ENDIAN", "!=", "high_p", ")", "unpack", "=", "gen_msa_ilvl_h", ";", "else", "unpack", "=", "gen_msa_ilvr_h", ";", "cmpFunc", "=", "gen_msa_clt_s_h", ";", "break", ";", "case", "V16QImode", ":", "if", "(", "BYTES_BIG_ENDIAN", "!=", "high_p", ")", "unpack", "=", "gen_msa_ilvl_b", ";", "else", "unpack", "=", "gen_msa_ilvr_b", ";", "cmpFunc", "=", "gen_msa_clt_s_b", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "break", ";", "}", "if", "(", "!", "unsigned_p", ")", "{", "tmp", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "cmpFunc", "(", "tmp", ",", "operands", "[", "1", "]", ",", "CONST0_RTX", "(", "imode", ")", ")", ")", ";", "}", "else", "tmp", "=", "force_reg", "(", "imode", ",", "CONST0_RTX", "(", "imode", ")", ")", ";", "dest", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "unpack", "(", "dest", ",", "operands", "[", "1", "]", ",", "tmp", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_lowpart", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "dest", ")", ")", ";", "return", ";", "}", "switch", "(", "imode", ")", "{", "case", "V8QImode", ":", "if", "(", "high_p", ")", "unpack", "=", "gen_loongson_punpckhbh", ";", "else", "unpack", "=", "gen_loongson_punpcklbh", ";", "cmpFunc", "=", "gen_loongson_pcmpgtb", ";", "break", ";", "case", "V4HImode", ":", "if", "(", "high_p", ")", "unpack", "=", "gen_loongson_punpckhhw", ";", "else", "unpack", "=", "gen_loongson_punpcklhw", ";", "cmpFunc", "=", "gen_loongson_pcmpgth", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "zero", "=", "force_reg", "(", "imode", ",", "CONST0_RTX", "(", "imode", ")", ")", ";", "if", "(", "unsigned_p", ")", "tmp", "=", "zero", ";", "else", "{", "tmp", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "cmpFunc", "(", "tmp", ",", "zero", ",", "operands", "[", "1", "]", ")", ")", ";", "}", "dest", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "unpack", "(", "dest", ",", "operands", "[", "1", "]", ",", "tmp", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_lowpart", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "dest", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "an", "integral", "vector", "unpack", "operation", "."], "TS_V_token": ["mips", "2", "1", "1", "1", "0", "0", "1", "1", "0", "0"], "File": "mips6", "Func": "mips_expand_vec_unpack", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32775, "Length": 387} {"ground_truth": ["", "void", "mips_final_prescan_insn", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "opvec", ",", "int", "noperands", ")", "{", "if", "(", "INSN_P", "(", "insn", ")", "&&", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "UNSPEC_VOLATILE", "&&", "XINT", "(", "PATTERN", "(", "insn", ")", ",", "1", ")", "==", "UNSPEC_CONSTTABLE", ")", "mips_set_text_contents_type", "(", "asm_out_file", ",", "\"__pool_\"", ",", "XINT", "(", "XVECEXP", "(", "PATTERN", "(", "insn", ")", ",", "0", ",", "0", ")", ",", "0", ")", ",", "FALSE", ")", ";", "if", "(", "mips_need_noat_wrapper_p", "(", "insn", ",", "opvec", ",", "noperands", ")", ")", "mips_push_asm_switch", "(", "&", "mips_noat", ")", ";", "}", ""], "natrual_language": ["Implement", "FINAL_PRESCAN_INSN", "."], "TS_V_token": ["mips", "1", "\"__pool_\"", "0", "0", "0"], "File": "mips6", "Func": "mips_final_prescan_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32776, "Length": 88} {"ground_truth": ["", "rtx", "mips_gen_const_int_vector", "(", "machine_mode", "mode", ",", "HOST_WIDE_INT", "val", ")", "{", "int", "nunits", "=", "GET_MODE_NUNITS", "(", "mode", ")", ";", "rtvec", "v", "=", "rtvec_alloc", "(", "nunits", ")", ";", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nunits", ";", "i", "++", ")", "RTVEC_ELT", "(", "v", ",", "i", ")", "=", "gen_int_mode", "(", "val", ",", "GET_MODE_INNER", "(", "mode", ")", ")", ";", "return", "gen_rtx_CONST_VECTOR", "(", "mode", ",", "v", ")", ";", "}", ""], "natrual_language": ["Return", "a", "const_int", "vector", "of", "VAL", "with", "mode", "MODE", "."], "TS_V_token": ["mips", "0"], "File": "mips6", "Func": "mips_gen_const_int_vector", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32777, "Length": 68} {"ground_truth": ["", "static", "bool", "mips_hard_regno_mode_ok_p", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "unsigned", "int", "size", ";", "enum", "mode_class", "mclass", ";", "if", "(", "mode", "==", "CCV2mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "2", "==", "0", ")", ";", "if", "(", "mode", "==", "CCV4mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "4", "==", "0", ")", ";", "if", "(", "mode", "==", "CCmode", ")", "return", "ISA_HAS_8CC", "?", "ST_REG_P", "(", "regno", ")", ":", "regno", "==", "FPSW_REGNUM", ";", "size", "=", "GET_MODE_SIZE", "(", "mode", ")", ";", "mclass", "=", "GET_MODE_CLASS", "(", "mode", ")", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "mode", "!=", "CCFmode", "&&", "!", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "(", "(", "regno", "-", "GP_REG_FIRST", ")", "&", "1", ")", "==", "0", "||", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "true", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "(", "(", "(", "regno", "-", "FP_REG_FIRST", ")", "%", "MAX_FPRS_PER_FMT", ")", "==", "0", "||", "(", "MIN_FPRS_PER_FMT", "==", "1", "&&", "size", "<=", "UNITS_PER_FPREG", ")", ")", ")", "{", "if", "(", "TARGET_O32_FP64A_ABI", "&&", "size", "<=", "4", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", "return", "false", ";", "if", "(", "mode", "==", "CCFmode", ")", "return", "!", "(", "TARGET_FLOATXX", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", ";", "if", "(", "TARGET_LOONGSON_VECTORS", "&&", "(", "mode", "==", "V2SImode", "||", "mode", "==", "V4HImode", "||", "mode", "==", "V8QImode", "||", "mode", "==", "DImode", ")", ")", "return", "true", ";", "if", "(", "mclass", "==", "MODE_FLOAT", "||", "mclass", "==", "MODE_COMPLEX_FLOAT", "||", "mclass", "==", "MODE_VECTOR_FLOAT", ")", "return", "size", "<=", "UNITS_PER_FPVALUE", ";", "if", "(", "mclass", "==", "MODE_INT", ")", "return", "size", ">=", "MIN_UNITS_PER_WORD", "&&", "size", "<=", "UNITS_PER_FPREG", ";", "}", "if", "(", "ACC_REG_P", "(", "regno", ")", "&&", "!", "VECTOR_MODE_P", "(", "mode", ")", "&&", "(", "INTEGRAL_MODE_P", "(", "mode", ")", "||", "ALL_FIXED_POINT_MODE_P", "(", "mode", ")", ")", ")", "{", "if", "(", "MD_REG_P", "(", "regno", ")", ")", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", ")", "return", "regno", "==", "(", "size", "<=", "UNITS_PER_WORD", "?", "LO_REGNUM", ":", "MD_REG_FIRST", ")", ";", "}", "else", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", ")", "return", "true", ";", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", "&&", "(", "(", "regno", "-", "DSP_ACC_REG_FIRST", ")", "&", "1", ")", "==", "0", ")", "return", "true", ";", "}", "}", "if", "(", "ALL_COP_REG_P", "(", "regno", ")", ")", "return", "mclass", "==", "MODE_INT", "&&", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "regno", "==", "GOT_VERSION_REGNUM", ")", "return", "mode", "==", "SImode", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "register", "REGNO", "can", "store", "a", "value", "of", "mode", "MODE", ".", "The", "result", "of", "this", "function", "is", "cached", "in", "mips_hard_regno_mode_ok", "."], "TS_V_token": ["mips", "2", "0", "4", "0", "1", "0", "0", "1", "4", "1", "0", "1", "0", "2", "2", "1", "0"], "File": "mips6", "Func": "mips_hard_regno_mode_ok_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32778, "Length": 407} {"ground_truth": ["", "unsigned", "int", "mips_hard_regno_nregs", "(", "int", "regno", ",", "machine_mode", "mode", ")", "{", "if", "(", "ST_REG_P", "(", "regno", ")", ")", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "3", ")", "/", "4", ";", "if", "(", "FP_REG_P", "(", "regno", ")", ")", "{", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "1", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_FPREG", "-", "1", ")", "/", "UNITS_PER_FPREG", ";", "}", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "}", ""], "natrual_language": ["Implement", "HARD_REGNO_NREGS", "."], "TS_V_token": ["mips", "3", "4", "1", "1", "1"], "File": "mips6", "Func": "mips_hard_regno_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32779, "Length": 78} {"ground_truth": ["", "static", "void", "mips_init_builtins", "(", "void", ")", "{", "const", "struct", "mips_builtin_description", "*", "d", ";", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips_builtins", ")", ";", "i", "++", ")", "{", "d", "=", "&", "mips_builtins", "[", "i", "]", ";", "if", "(", "d", "->", "avail", "(", ")", ")", "{", "mips_builtin_decls", "[", "i", "]", "=", "add_builtin_function", "(", "d", "->", "name", ",", "mips_build_function_type", "(", "d", "->", "function_type", ")", ",", "i", ",", "BUILT_IN_MD", ",", "NULL", ",", "NULL", ")", ";", "mips_get_builtin_decl_index", "[", "d", "->", "icode", "]", "=", "i", ";", "}", "}", "}", ""], "natrual_language": ["Init", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_INIT_BUILTIN", "."], "TS_V_token": ["mips", "0"], "File": "mips6", "Func": "mips_init_builtins", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32780, "Length": 90} {"ground_truth": ["", "static", "bool", "mips_mode_ok_for_mov_fmt_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "CCFmode", ":", "case", "SFmode", ":", "return", "TARGET_HARD_FLOAT", ";", "case", "DFmode", ":", "return", "TARGET_HARD_FLOAT", "&&", "TARGET_DOUBLE_FLOAT", ";", "case", "V2SFmode", ":", "return", "TARGET_HARD_FLOAT", "&&", "TARGET_PAIRED_SINGLE_FLOAT", ";", "default", ":", "return", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "moves", "in", "mode", "MODE", "can", "use", "the", "FPU", "'s", "mov.fmt", "instruction", "."], "TS_V_token": ["mips"], "File": "mips6", "Func": "mips_mode_ok_for_mov_fmt_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32781, "Length": 48} {"ground_truth": ["", "static", "machine_mode", "mips_preferred_simd_mode", "(", "machine_mode", "mode", ")", "{", "if", "(", "TARGET_PAIRED_SINGLE_FLOAT", "&&", "mode", "==", "SFmode", ")", "return", "V2SFmode", ";", "if", "(", "!", "ISA_HAS_MSA", ")", "return", "word_mode", ";", "switch", "(", "mode", ")", "{", "case", "QImode", ":", "return", "V16QImode", ";", "case", "HImode", ":", "return", "V8HImode", ";", "case", "SImode", ":", "return", "V4SImode", ";", "case", "DImode", ":", "return", "V2DImode", ";", "case", "SFmode", ":", "return", "V4SFmode", ";", "case", "DFmode", ":", "return", "V2DFmode", ";", "default", ":", "break", ";", "}", "return", "word_mode", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_PREFERRED_SIMD_MODE", "."], "TS_V_token": ["mips"], "File": "mips6", "Func": "mips_preferred_simd_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32782, "Length": 77} {"ground_truth": ["", "static", "void", "mips_set_compression_mode", "(", "unsigned", "int", "compression_mode", ")", "{", "if", "(", "compression_mode", "==", "old_compression_mode", ")", "return", ";", "target_flags", "=", "mips_base_target_flags", ";", "flag_schedule_insns", "=", "mips_base_schedule_insns", ";", "flag_reorder_blocks_and_partition", "=", "mips_base_reorder_blocks_and_partition", ";", "flag_move_loop_invariants", "=", "mips_base_move_loop_invariants", ";", "align_loops", "=", "mips_base_align_loops", ";", "align_jumps", "=", "mips_base_align_jumps", ";", "align_functions", "=", "mips_base_align_functions", ";", "target_flags", "&=", "~", "(", "MASK_MIPS16", "|", "MASK_MICROMIPS", ")", ";", "target_flags", "|=", "compression_mode", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "target_flags", "|=", "MASK_MIPS16", ";", "target_flags", "&=", "~", "MASK_SYNCI", ";", "flag_schedule_insns", "=", "0", ";", "flag_reorder_blocks_and_partition", "=", "0", ";", "flag_move_loop_invariants", "=", "0", ";", "target_flags", "|=", "MASK_EXPLICIT_RELOCS", ";", "targetm", ".", "min_anchor_offset", "=", "0", ";", "targetm", ".", "max_anchor_offset", "=", "127", ";", "targetm", ".", "const_anchor", "=", "0", ";", "target_flags", "&=", "~", "MASK_RELAX_PIC_CALLS", ";", "target_flags", "&=", "~", "MASK_FIX_R4000", ";", "if", "(", "flag_pic", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"MIPS16 PIC for ABIs other than o32 and o64\"", ")", ";", "if", "(", "TARGET_XGOT", ")", "sorry", "(", "\"MIPS16 -mxgot code\"", ")", ";", "if", "(", "TARGET_HARD_FLOAT_ABI", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"hard-float MIPS16 code for ABIs other than o32 and o64\"", ")", ";", "if", "(", "TARGET_MSA", ")", "sorry", "(", "\"MSA MIPS16 code\"", ")", ";", "}", "else", "{", "if", "(", "TARGET_MICROMIPS", ")", "target_flags", "&=", "~", "MASK_BRANCHLIKELY", ";", "if", "(", "TARGET_64BIT", ")", "{", "if", "(", "align_loops", "==", "0", ")", "align_loops", "=", "8", ";", "if", "(", "align_jumps", "==", "0", ")", "align_jumps", "=", "8", ";", "if", "(", "align_functions", "==", "0", ")", "align_functions", "=", "8", ";", "}", "targetm", ".", "min_anchor_offset", "=", "-", "32768", ";", "targetm", ".", "max_anchor_offset", "=", "32767", ";", "targetm", ".", "const_anchor", "=", "0x8000", ";", "}", "mips_init_relocs", "(", ")", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "if", "(", "!", "mips16_globals", ")", "mips16_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "mips16_globals", ")", ";", "}", "else", "if", "(", "compression_mode", "&", "MASK_MICROMIPS", ")", "{", "if", "(", "!", "micromips_globals", ")", "micromips_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "micromips_globals", ")", ";", "}", "else", "restore_target_globals", "(", "&", "default_target_globals", ")", ";", "old_compression_mode", "=", "compression_mode", ";", "}", ""], "natrual_language": ["Set", "up", "the", "target-dependent", "global", "state", "for", "ISA", "mode", "COMPRESSION_MODE", ",", "which", "is", "either", "MASK_MIPS16", "or", "MASK_MICROMIPS", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "127", "0", "\"MIPS16 PIC for ABIs other than o32 and o64\"", "\"MIPS16 -mxgot code\"", "\"hard-float MIPS16 code for ABIs other than o32 and o64\"", "\"MSA MIPS16 code\"", "0", "8", "0", "8", "0", "8", "32768", "32767", "0x8000"], "File": "mips6", "Func": "mips_set_compression_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32783, "Length": 295} {"ground_truth": ["", "void", "mips_split_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "rtx", "low_dest", ";", "gcc_checking_assert", "(", "mips_split_move_p", "(", "dest", ",", "src", ",", "split_type", ")", ")", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "GET_MODE", "(", "dest", ")", ")", ")", "mips_split_128bit_move", "(", "dest", ",", "src", ")", ";", "else", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "||", "FP_REG_RTX_P", "(", "src", ")", ")", "{", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "DImode", ")", "emit_insn", "(", "gen_move_doubleword_fprdi", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "DFmode", ")", "emit_insn", "(", "gen_move_doubleword_fprdf", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V2SFmode", ")", "emit_insn", "(", "gen_move_doubleword_fprv2sf", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V2SImode", ")", "emit_insn", "(", "gen_move_doubleword_fprv2si", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V4HImode", ")", "emit_insn", "(", "gen_move_doubleword_fprv4hi", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "!", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "V8QImode", ")", "emit_insn", "(", "gen_move_doubleword_fprv8qi", "(", "dest", ",", "src", ")", ")", ";", "else", "if", "(", "TARGET_64BIT", "&&", "GET_MODE", "(", "dest", ")", "==", "TFmode", ")", "emit_insn", "(", "gen_move_doubleword_fprtf", "(", "dest", ",", "src", ")", ")", ";", "else", "gcc_unreachable", "(", ")", ";", "}", "else", "if", "(", "REG_P", "(", "dest", ")", "&&", "REGNO", "(", "dest", ")", "==", "MD_REG_FIRST", ")", "{", "low_dest", "=", "mips_subword", "(", "dest", ",", "false", ")", ";", "mips_emit_move", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mthidi_ti", "(", "dest", ",", "mips_subword", "(", "src", ",", "true", ")", ",", "low_dest", ")", ")", ";", "else", "emit_insn", "(", "gen_mthisi_di", "(", "dest", ",", "mips_subword", "(", "src", ",", "true", ")", ",", "low_dest", ")", ")", ";", "}", "else", "if", "(", "REG_P", "(", "src", ")", "&&", "REGNO", "(", "src", ")", "==", "MD_REG_FIRST", ")", "{", "mips_emit_move", "(", "mips_subword", "(", "dest", ",", "false", ")", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mfhidi_ti", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "src", ")", ")", ";", "else", "emit_insn", "(", "gen_mfhisi_di", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "src", ")", ")", ";", "}", "else", "{", "low_dest", "=", "mips_subword", "(", "dest", ",", "false", ")", ";", "if", "(", "REG_P", "(", "low_dest", ")", "&&", "reg_overlap_mentioned_p", "(", "low_dest", ",", "src", ")", ")", "{", "mips_emit_move", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "mips_subword", "(", "src", ",", "true", ")", ")", ";", "mips_emit_move", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "}", "else", "{", "mips_emit_move", "(", "low_dest", ",", "mips_subword", "(", "src", ",", "false", ")", ")", ";", "mips_emit_move", "(", "mips_subword", "(", "dest", ",", "true", ")", ",", "mips_subword", "(", "src", ",", "true", ")", ")", ";", "}", "}", "}", ""], "natrual_language": ["Split", "a", "move", "from", "SRC", "to", "DEST", ",", "given", "that", "mips_split_move_p", "holds", ".", "SPLIT_TYPE", "describes", "the", "split", "condition", "."], "TS_V_token": ["mips"], "File": "mips6", "Func": "mips_split_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32784, "Length": 461} {"ground_truth": ["", "static", "tree", "mips_std_gimplify_va_arg_expr", "(", "tree", "valist", ",", "tree", "type", ",", "gimple_seq", "*", "pre_p", ",", "gimple_seq", "*", "post_p", ")", "{", "tree", "addr", ",", "t", ",", "type_size", ",", "rounded_size", ",", "valist_tmp", ";", "unsigned", "HOST_WIDE_INT", "align", ",", "boundary", ";", "bool", "indirect", ";", "indirect", "=", "pass_by_reference", "(", "NULL", ",", "TYPE_MODE", "(", "type", ")", ",", "type", ",", "false", ")", ";", "if", "(", "indirect", ")", "type", "=", "build_pointer_type", "(", "type", ")", ";", "align", "=", "PARM_BOUNDARY", "/", "BITS_PER_UNIT", ";", "boundary", "=", "targetm", ".", "calls", ".", "function_arg_boundary", "(", "TYPE_MODE", "(", "type", ")", ",", "type", ")", ";", "if", "(", "boundary", ">", "MAX_SUPPORTED_STACK_ALIGNMENT", ")", "boundary", "=", "MAX_SUPPORTED_STACK_ALIGNMENT", ";", "boundary", "/=", "BITS_PER_UNIT", ";", "valist_tmp", "=", "get_initialized_tmp_var", "(", "valist", ",", "pre_p", ",", "NULL", ")", ";", "if", "(", "boundary", ">", "align", ")", "{", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "fold_build_pointer_plus_hwi", "(", "valist_tmp", ",", "boundary", "-", "1", ")", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "fold_build2", "(", "BIT_AND_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "build_int_cst", "(", "TREE_TYPE", "(", "valist", ")", ",", "-", "boundary", ")", ")", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "}", "else", "boundary", "=", "align", ";", "boundary", "*=", "BITS_PER_UNIT", ";", "if", "(", "boundary", "<", "TYPE_ALIGN", "(", "type", ")", ")", "{", "type", "=", "build_variant_type_copy", "(", "type", ")", ";", "SET_TYPE_ALIGN", "(", "type", ",", "boundary", ")", ";", "}", "type_size", "=", "size_in_bytes", "(", "type", ")", ";", "rounded_size", "=", "round_up", "(", "type_size", ",", "align", ")", ";", "gimplify_expr", "(", "&", "rounded_size", ",", "pre_p", ",", "post_p", ",", "is_gimple_val", ",", "fb_rvalue", ")", ";", "addr", "=", "valist_tmp", ";", "if", "(", "PAD_VARARGS_DOWN", "&&", "!", "integer_zerop", "(", "rounded_size", ")", ")", "{", "t", "=", "fold_build2_loc", "(", "input_location", ",", "GT_EXPR", ",", "sizetype", ",", "rounded_size", ",", "size_int", "(", "align", ")", ")", ";", "t", "=", "fold_build3", "(", "COND_EXPR", ",", "sizetype", ",", "t", ",", "size_zero_node", ",", "size_binop", "(", "MINUS_EXPR", ",", "rounded_size", ",", "type_size", ")", ")", ";", "addr", "=", "fold_build_pointer_plus", "(", "addr", ",", "t", ")", ";", "}", "t", "=", "fold_build_pointer_plus", "(", "valist_tmp", ",", "rounded_size", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist", ",", "t", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "addr", "=", "fold_convert", "(", "build_pointer_type", "(", "type", ")", ",", "addr", ")", ";", "if", "(", "indirect", ")", "addr", "=", "build_va_arg_indirect_ref", "(", "addr", ")", ";", "return", "build_va_arg_indirect_ref", "(", "addr", ")", ";", "}", ""], "natrual_language": ["Like", "std_gimplify_va_arg_expr", ",", "but", "apply", "alignment", "to", "zero-sized", "types", "as", "well", "."], "TS_V_token": ["mips", "1"], "File": "mips6", "Func": "mips_std_gimplify_va_arg_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32785, "Length": 386} {"ground_truth": ["", "static", "bool", "mips_vector_mode_supported_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "V2SFmode", ":", "return", "TARGET_PAIRED_SINGLE_FLOAT", ";", "case", "V2HImode", ":", "case", "V4QImode", ":", "case", "V2HQmode", ":", "case", "V2UHQmode", ":", "case", "V2HAmode", ":", "case", "V2UHAmode", ":", "case", "V4QQmode", ":", "case", "V4UQQmode", ":", "return", "TARGET_DSP", ";", "case", "V2SImode", ":", "case", "V4HImode", ":", "case", "V8QImode", ":", "return", "TARGET_LOONGSON_VECTORS", ";", "default", ":", "return", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ";", "}", "}", ""], "natrual_language": ["Target", "hook", "for", "vector_mode_supported_p", "."], "TS_V_token": ["mips"], "File": "mips6", "Func": "mips_vector_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32786, "Length": 68} {"ground_truth": ["", "static", "bool", "r10k_safe_mem_expr_p", "(", "tree", "expr", ",", "unsigned", "HOST_WIDE_INT", "offset", ")", "{", "HOST_WIDE_INT", "bitoffset", ",", "bitsize", ";", "tree", "inner", ",", "var_offset", ";", "machine_mode", "mode", ";", "int", "unsigned_p", ",", "reverse_p", ",", "volatile_p", ";", "inner", "=", "get_inner_reference", "(", "expr", ",", "&", "bitsize", ",", "&", "bitoffset", ",", "&", "var_offset", ",", "&", "mode", ",", "&", "unsigned_p", ",", "&", "reverse_p", ",", "&", "volatile_p", ")", ";", "if", "(", "!", "DECL_P", "(", "inner", ")", "||", "!", "DECL_SIZE_UNIT", "(", "inner", ")", "||", "var_offset", ")", "return", "false", ";", "offset", "+=", "bitoffset", "/", "BITS_PER_UNIT", ";", "return", "offset", "<", "tree_to_uhwi", "(", "DECL_SIZE_UNIT", "(", "inner", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "MEM", "with", "MEM_EXPR", "EXPR", "and", "MEM_OFFSET", "OFFSET", "is", "an", "in-range", "access", "to", "an", "automatic", "variable", ",", "or", "to", "an", "object", "with", "a", "link-time-constant", "address", "."], "TS_V_token": ["mips"], "File": "mips6", "Func": "r10k_safe_mem_expr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32787, "Length": 97} {"ground_truth": ["", "static", "void", "mips_autovectorize_vector_sizes", "(", "vector_sizes", "*", "sizes", ")", "{", "if", "(", "ISA_HAS_MSA", ")", "sizes", "->", "safe_push", "(", "16", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES", "."], "TS_V_token": ["mips", "16"], "File": "mips7", "Func": "mips_autovectorize_vector_sizes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32788, "Length": 21} {"ground_truth": ["", "static", "void", "mips_block_move_straight", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ")", "{", "HOST_WIDE_INT", "offset", ",", "delta", ";", "unsigned", "HOST_WIDE_INT", "bits", ";", "int", "i", ";", "machine_mode", "mode", ";", "rtx", "*", "regs", ";", "if", "(", "!", "ISA_HAS_LWL_LWR", ")", "bits", "=", "MIN", "(", "BITS_PER_WORD", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ")", ";", "else", "{", "if", "(", "MEM_ALIGN", "(", "src", ")", "==", "BITS_PER_WORD", "/", "2", "&&", "MEM_ALIGN", "(", "dest", ")", "==", "BITS_PER_WORD", "/", "2", ")", "bits", "=", "BITS_PER_WORD", "/", "2", ";", "else", "bits", "=", "BITS_PER_WORD", ";", "}", "mode", "=", "int_mode_for_size", "(", "bits", ",", "0", ")", ".", "require", "(", ")", ";", "delta", "=", "bits", "/", "BITS_PER_UNIT", ";", "regs", "=", "XALLOCAVEC", "(", "rtx", ",", "length", "/", "delta", ")", ";", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "{", "regs", "[", "i", "]", "=", "gen_reg_rtx", "(", "mode", ")", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", ">=", "bits", ")", "mips_emit_move", "(", "regs", "[", "i", "]", ",", "adjust_address", "(", "src", ",", "mode", ",", "offset", ")", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ext_as_unaligned_load", "(", "regs", "[", "i", "]", ",", "part", ",", "bits", ",", "0", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "}", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "if", "(", "MEM_ALIGN", "(", "dest", ")", ">=", "bits", ")", "mips_emit_move", "(", "adjust_address", "(", "dest", ",", "mode", ",", "offset", ")", ",", "regs", "[", "i", "]", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ins_as_unaligned_store", "(", "part", ",", "regs", "[", "i", "]", ",", "bits", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "offset", "<", "length", ")", "{", "src", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "dest", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "move_by_pieces", "(", "dest", ",", "src", ",", "length", "-", "offset", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ",", "0", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "straight-line", "code", "to", "move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", ".", "Assume", "that", "the", "areas", "do", "not", "overlap", "."], "TS_V_token": ["mips", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips7", "Func": "mips_block_move_straight", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32789, "Length": 377} {"ground_truth": ["", "int", "mips_class_max_nregs", "(", "enum", "reg_class", "rclass", ",", "machine_mode", "mode", ")", "{", "int", "size", ";", "HARD_REG_SET", "left", ";", "size", "=", "0x8000", ";", "COPY_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "rclass", "]", ")", ";", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ")", "{", "if", "(", "mips_hard_regno_mode_ok", "(", "ST_REG_FIRST", ",", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "4", ")", ";", "AND_COMPL_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ";", "}", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ")", "{", "if", "(", "mips_hard_regno_mode_ok", "(", "FP_REG_FIRST", ",", "mode", ")", ")", "{", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_MSA_REG", ")", ";", "else", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_FPREG", ")", ";", "}", "AND_COMPL_HARD_REG_SET", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ";", "}", "if", "(", "!", "hard_reg_set_empty_p", "(", "left", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_WORD", ")", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "size", "-", "1", ")", "/", "size", ";", "}", ""], "natrual_language": ["Implement", "CLASS_MAX_NREGS", ".", "Usually", "all", "registers", "are", "word-sized", ".", "The", "only", "supported", "exception", "is", "-mgp64", "-msingle-float", ",", "which", "has", "64-bit", "words", "but", "32-bit", "float", "registers", ".", "A", "word-based", "calculation", "is", "correct", "even", "in", "that", "case", ",", "since", "-msingle-float", "disallows", "multi-FPR", "values", ".", "The", "FP", "status", "registers", "are", "an", "exception", "to", "this", "rule", ".", "They", "are", "always", "4", "bytes", "wide", "as", "they", "only", "hold", "condition", "code", "modes", ",", "and", "CCmode", "is", "always", "considered", "to", "be", "4", "bytes", "wide", "."], "TS_V_token": ["mips", "0x8000", "4", "1"], "File": "mips7", "Func": "mips_class_max_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32790, "Length": 181} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_even_odd", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "odd", ",", "nelt", "=", "d", "->", "nelt", ";", "rtx", "t0", ",", "t1", ",", "t2", ",", "t3", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_VECTORS", ")", ")", "return", "false", ";", "if", "(", "nelt", "<", "4", ")", "return", "false", ";", "odd", "=", "d", "->", "perm", "[", "0", "]", ";", "if", "(", "odd", ">", "1", ")", "return", "false", ";", "for", "(", "i", "=", "1", ";", "i", "<", "nelt", ";", "++", "i", ")", "if", "(", "d", "->", "perm", "[", "i", "]", "!=", "i", "*", "2", "+", "odd", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "t0", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "switch", "(", "d", "->", "vmode", ")", "{", "case", "E_V4HImode", ":", "emit_insn", "(", "gen_loongson_punpckhhw", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklhw", "(", "t1", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "if", "(", "odd", ")", "emit_insn", "(", "gen_loongson_punpckhhw", "(", "d", "->", "target", ",", "t1", ",", "t0", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpcklhw", "(", "d", "->", "target", ",", "t1", ",", "t0", ")", ")", ";", "break", ";", "case", "E_V8QImode", ":", "t2", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "t3", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t1", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t2", ",", "t1", ",", "t0", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t3", ",", "t1", ",", "t0", ")", ")", ";", "if", "(", "odd", ")", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "d", "->", "target", ",", "t3", ",", "t2", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "d", "->", "target", ",", "t3", ",", "t2", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "patterns", "for", "even-odd", "extraction", "."], "TS_V_token": ["mips", "4", "0", "1", "1", "2"], "File": "mips7", "Func": "mips_expand_vpc_loongson_even_odd", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32791, "Length": 327} {"ground_truth": ["", "static", "bool", "mips_hard_regno_call_part_clobbered", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "if", "(", "TARGET_FLOATXX", "&&", "hard_regno_nregs", "(", "regno", ",", "mode", ")", "==", "1", "&&", "FP_REG_P", "(", "regno", ")", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", "return", "true", ";", "if", "(", "ISA_HAS_MSA", "&&", "FP_REG_P", "(", "regno", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", ">", "8", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "TARGET_HARD_REGNO_CALL_PART_CLOBBERED", ".", "Odd-numbered", "single-precision", "registers", "are", "not", "considered", "callee-saved", "for", "o32", "FPXX", "as", "they", "will", "be", "clobbered", "when", "run", "on", "an", "FR=1", "FPU", ".", "MSA", "vector", "registers", "with", "MODE", ">", "64", "bits", "are", "part", "clobbered", "too", "."], "TS_V_token": ["mips", "1", "1", "0", "8"], "File": "mips7", "Func": "mips_hard_regno_call_part_clobbered", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32792, "Length": 64} {"ground_truth": ["", "static", "bool", "mips_hard_regno_mode_ok_uncached", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "unsigned", "int", "size", ";", "enum", "mode_class", "mclass", ";", "if", "(", "mode", "==", "CCV2mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "2", "==", "0", ")", ";", "if", "(", "mode", "==", "CCV4mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "4", "==", "0", ")", ";", "if", "(", "mode", "==", "CCmode", ")", "return", "ISA_HAS_8CC", "?", "ST_REG_P", "(", "regno", ")", ":", "regno", "==", "FPSW_REGNUM", ";", "size", "=", "GET_MODE_SIZE", "(", "mode", ")", ";", "mclass", "=", "GET_MODE_CLASS", "(", "mode", ")", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "mode", "!=", "CCFmode", "&&", "!", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "(", "(", "regno", "-", "GP_REG_FIRST", ")", "&", "1", ")", "==", "0", "||", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "true", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "(", "(", "(", "regno", "-", "FP_REG_FIRST", ")", "%", "MAX_FPRS_PER_FMT", ")", "==", "0", "||", "(", "MIN_FPRS_PER_FMT", "==", "1", "&&", "size", "<=", "UNITS_PER_FPREG", ")", ")", ")", "{", "if", "(", "TARGET_O32_FP64A_ABI", "&&", "size", "<=", "4", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", "return", "false", ";", "if", "(", "mode", "==", "CCFmode", ")", "return", "!", "(", "TARGET_FLOATXX", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", ";", "if", "(", "TARGET_LOONGSON_VECTORS", "&&", "(", "mode", "==", "V2SImode", "||", "mode", "==", "V4HImode", "||", "mode", "==", "V8QImode", "||", "mode", "==", "DImode", ")", ")", "return", "true", ";", "if", "(", "mclass", "==", "MODE_FLOAT", "||", "mclass", "==", "MODE_COMPLEX_FLOAT", "||", "mclass", "==", "MODE_VECTOR_FLOAT", ")", "return", "size", "<=", "UNITS_PER_FPVALUE", ";", "if", "(", "mclass", "==", "MODE_INT", ")", "return", "size", ">=", "MIN_UNITS_PER_WORD", "&&", "size", "<=", "UNITS_PER_FPREG", ";", "}", "if", "(", "ACC_REG_P", "(", "regno", ")", "&&", "!", "VECTOR_MODE_P", "(", "mode", ")", "&&", "(", "INTEGRAL_MODE_P", "(", "mode", ")", "||", "ALL_FIXED_POINT_MODE_P", "(", "mode", ")", ")", ")", "{", "if", "(", "MD_REG_P", "(", "regno", ")", ")", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", ")", "return", "regno", "==", "(", "size", "<=", "UNITS_PER_WORD", "?", "LO_REGNUM", ":", "MD_REG_FIRST", ")", ";", "}", "else", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", ")", "return", "true", ";", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", "&&", "(", "(", "regno", "-", "DSP_ACC_REG_FIRST", ")", "&", "1", ")", "==", "0", ")", "return", "true", ";", "}", "}", "if", "(", "ALL_COP_REG_P", "(", "regno", ")", ")", "return", "mclass", "==", "MODE_INT", "&&", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "regno", "==", "GOT_VERSION_REGNUM", ")", "return", "mode", "==", "SImode", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "register", "REGNO", "can", "store", "a", "value", "of", "mode", "MODE", ".", "The", "result", "of", "this", "function", "is", "cached", "in", "mips_hard_regno_mode_ok", "."], "TS_V_token": ["mips", "2", "0", "4", "0", "1", "0", "0", "1", "4", "1", "0", "1", "0", "2", "2", "1", "0"], "File": "mips7", "Func": "mips_hard_regno_mode_ok_uncached", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32793, "Length": 407} {"ground_truth": ["", "static", "bool", "mips_vector_mode_supported_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "E_V2SFmode", ":", "return", "TARGET_PAIRED_SINGLE_FLOAT", ";", "case", "E_V2HImode", ":", "case", "E_V4QImode", ":", "case", "E_V2HQmode", ":", "case", "E_V2UHQmode", ":", "case", "E_V2HAmode", ":", "case", "E_V2UHAmode", ":", "case", "E_V4QQmode", ":", "case", "E_V4UQQmode", ":", "return", "TARGET_DSP", ";", "case", "E_V2SImode", ":", "case", "E_V4HImode", ":", "case", "E_V8QImode", ":", "return", "TARGET_LOONGSON_VECTORS", ";", "default", ":", "return", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ";", "}", "}", ""], "natrual_language": ["Target", "hook", "for", "vector_mode_supported_p", "."], "TS_V_token": ["mips"], "File": "mips7", "Func": "mips_vector_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32794, "Length": 68} {"ground_truth": ["", "bool", "and_operands_ok", "(", "machine_mode", "mode", ",", "rtx", "op1", ",", "rtx", "op2", ")", "{", "if", "(", "memory_operand", "(", "op1", ",", "mode", ")", ")", "{", "if", "(", "TARGET_MIPS16", ")", "{", "struct", "mips_address_info", "addr", ";", "if", "(", "!", "mips_classify_address", "(", "&", "addr", ",", "op1", ",", "mode", ",", "false", ")", ")", "return", "false", ";", "}", "return", "and_load_operand", "(", "op2", ",", "mode", ")", ";", "}", "else", "return", "and_reg_operand", "(", "op2", ",", "mode", ")", ";", "}", ""], "natrual_language": ["Return", "true", "iff", "OP1", "and", "OP2", "are", "valid", "operands", "together", "for", "the", "*", "and", "<", "MODE", ">", "3", "and", "*", "and", "<", "MODE", ">", "3_mips16", "patterns", ".", "For", "the", "cases", "to", "consider", ",", "see", "the", "table", "in", "the", "comment", "before", "the", "pattern", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "and_operands_ok", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32795, "Length": 70} {"ground_truth": ["", "inline", "bool", "mips_lo_sum_offset_hasher", "::", "equal", "(", "const", "mips_lo_sum_offset", "*", "entry", ",", "const", "rtx_def", "*", "value", ")", "{", "return", "rtx_equal_p", "(", "entry", "->", "base", ",", "value", ")", ";", "}", ""], "natrual_language": ["Compare", "H1", "and", "H2", "for", "equivalence", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "equal", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32796, "Length": 28} {"ground_truth": ["", "virtual", "unsigned", "int", "execute", "(", "function", "*", ")", "{", "return", "mips_machine_reorg2", "(", ")", ";", "}", ""], "natrual_language": ["Main", "entry", "point", "for", "this", "pass", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "execute", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32797, "Length": 15} {"ground_truth": ["", "static", "rtx", "gen_load_const_gp", "(", "rtx", "reg", ")", "{", "return", "PMODE_INSN", "(", "gen_load_const_gp", ",", "(", "reg", ")", ")", ";", "}", ""], "natrual_language": ["Return", "an", "instruction", "that", "copies", "$", "gp", "into", "register", "REG", ".", "We", "want", "GCC", "to", "treat", "the", "register", "'s", "value", "as", "constant", ",", "so", "that", "its", "value", "can", "be", "rematerialized", "on", "demand", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "gen_load_const_gp", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32798, "Length": 19} {"ground_truth": ["", "const", "char", "*", "mips16_set_fcsr_one_only_stub", "::", "get_name", "(", ")", "{", "return", "\"__mips16_set_fcsr\"", ";", "}", ""], "natrual_language": ["Return", "the", "overloaded", "or", "full", "function", "name", "for", "INSTANCE", ";", "OVERLOADED_P", "selects", "which", ".", "Allocate", "the", "string", "on", "m_string_obstack", ";", "the", "caller", "must", "use", "obstack_free", "to", "free", "it", "after", "use", "."], "TS_V_token": ["mips", "\"__mips16_set_fcsr\""], "File": "mips", "Func": "get_name", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32799, "Length": 13} {"ground_truth": ["", "inline", "hashval_t", "mips_lo_sum_offset_hasher", "::", "hash", "(", "const", "mips_lo_sum_offset", "*", "entry", ")", "{", "return", "mips_hash_base", "(", "entry", "->", "base", ")", ";", "}", ""], "natrual_language": ["Hash", "function", "for", "builtin", "functions", "with", "up", "to", "3", "arguments", "and", "a", "return", "type", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "hash", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32800, "Length": 21} {"ground_truth": ["", "bool", "lwsp_swsp_address_p", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "struct", "mips_address_info", "addr", ";", "return", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", "&&", "addr", ".", "type", "==", "ADDRESS_REG", "&&", "REGNO", "(", "addr", ".", "reg", ")", "==", "STACK_POINTER_REGNUM", "&&", "uw5_operand", "(", "addr", ".", "offset", ",", "mode", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "legitimate", "address", "that", "conforms", "to", "the", "requirements", "for", "a", "microMIPS", "LWSP", "or", "SWSP", "insn", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "lwsp_swsp_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32801, "Length": 54} {"ground_truth": ["", "bool", "m16_based_address_p", "(", "rtx", "x", ",", "machine_mode", "mode", ",", "insn_operand_predicate_fn", "offset_predicate", ")", "{", "struct", "mips_address_info", "addr", ";", "return", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", "&&", "addr", ".", "type", "==", "ADDRESS_REG", "&&", "M16_REG_P", "(", "REGNO", "(", "addr", ".", "reg", ")", ")", "&&", "offset_predicate", "(", "addr", ".", "offset", ",", "mode", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "legitimate", "for", "accessing", "values", "of", "mode", "MODE", ",", "if", "it", "is", "based", "on", "a", "MIPS16", "register", ",", "and", "if", "the", "offset", "satisfies", "OFFSET_PREDICATE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "m16_based_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32802, "Length": 58} {"ground_truth": ["", "int", "mask_low_and_shift_len", "(", "machine_mode", "mode", ",", "rtx", "mask", ",", "rtx", "shift", ")", "{", "HOST_WIDE_INT", "shval", ";", "shval", "=", "INTVAL", "(", "shift", ")", "&", "(", "GET_MODE_BITSIZE", "(", "mode", ")", "-", "1", ")", ";", "return", "exact_log2", "(", "(", "UINTVAL", "(", "mask", ")", ">>", "shval", ")", "+", "1", ")", ";", "}", ""], "natrual_language": ["The", "canonical", "form", "of", "a", "mask-low-and-shift-left", "operation", "is", "(", "and", "(", "ashift", "X", "SHIFT", ")", "MASK", ")", "where", "MASK", "has", "the", "lower", "SHIFT", "number", "of", "bits", "cleared", ".", "Thus", "we", "need", "to", "shift", "MASK", "to", "the", "right", "before", "checking", "if", "it", "is", "a", "valid", "mask", "value", ".", "MODE", "is", "the", "mode", "of", "the", "operation", ".", "If", "true", "return", "the", "length", "of", "the", "mask", ",", "otherwise", "return", "-1", "."], "TS_V_token": ["mips", "1", "1"], "File": "mips", "Func": "mask_low_and_shift_len", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32803, "Length": 48} {"ground_truth": ["", "bool", "mask_low_and_shift_p", "(", "machine_mode", "mode", ",", "rtx", "mask", ",", "rtx", "shift", ",", "int", "maxlen", ")", "{", "return", "IN_RANGE", "(", "mask_low_and_shift_len", "(", "mode", ",", "mask", ",", "shift", ")", ",", "1", ",", "maxlen", ")", ";", "}", ""], "natrual_language": ["Check", "if", "MASK", "and", "SHIFT", "are", "valid", "in", "mask-low-and-shift-left", "operation", "if", "MAXLEN", "is", "the", "maxium", "length", "of", "consecutive", "bits", "that", "can", "make", "up", "MASK", ".", "MODE", "is", "the", "mode", "of", "the", "operation", ".", "See", "mask_low_and_shift_len", "for", "the", "actual", "definition", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mask_low_and_shift_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32804, "Length": 34} {"ground_truth": ["", "static", "bool", "mflip_mips16_use_mips16_p", "(", "tree", "decl", ")", "{", "const", "char", "*", "name", ";", "bool", "base_is_mips16", "=", "(", "mips_base_compression_flags", "&", "MASK_MIPS16", ")", "!=", "0", ";", "if", "(", "!", "DECL_NAME", "(", "decl", ")", ")", "return", "!", "base_is_mips16", ";", "if", "(", "!", "mflip_mips16_htab", ")", "mflip_mips16_htab", "=", "hash_map", "<", "nofree_string_hash", ",", "bool", ">", "::", "create_ggc", "(", "37", ")", ";", "name", "=", "IDENTIFIER_POINTER", "(", "DECL_NAME", "(", "decl", ")", ")", ";", "bool", "existed", ";", "bool", "*", "slot", "=", "&", "mflip_mips16_htab", "->", "get_or_insert", "(", "name", ",", "&", "existed", ")", ";", "if", "(", "!", "existed", ")", "{", "mips16_flipper", "=", "!", "mips16_flipper", ";", "*", "slot", "=", "mips16_flipper", "?", "!", "base_is_mips16", ":", "base_is_mips16", ";", "}", "return", "*", "slot", ";", "}", ""], "natrual_language": ["DECL", "is", "a", "function", "that", "needs", "a", "default", "``", "mips16", "''", "or", "``", "nomips16", "''", "attribute", "for", "-mflip-mips16", ".", "Return", "true", "if", "it", "should", "use", "``", "mips16", "''", "and", "false", "if", "it", "should", "use", "``", "nomips16", "''", "."], "TS_V_token": ["mips", "0", "37"], "File": "mips", "Func": "mflip_mips16_use_mips16_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32805, "Length": 110} {"ground_truth": ["", "static", "char", "*", "mips16e_add_register_range", "(", "char", "*", "s", ",", "unsigned", "int", "min_reg", ",", "unsigned", "int", "max_reg", ")", "{", "if", "(", "min_reg", "!=", "max_reg", ")", "s", "+=", "sprintf", "(", "s", ",", "\",%s-%s\"", ",", "reg_names", "[", "min_reg", "]", ",", "reg_names", "[", "max_reg", "]", ")", ";", "else", "s", "+=", "sprintf", "(", "s", ",", "\",%s\"", ",", "reg_names", "[", "min_reg", "]", ")", ";", "return", "s", ";", "}", ""], "natrual_language": ["Add", "a", "MIPS16e", "SAVE", "or", "RESTORE", "register-range", "argument", "to", "string", "S", "for", "the", "register", "range", "[", "MIN_REG", ",", "MAX_REG", "]", ".", "Return", "a", "pointer", "to", "the", "null", "terminator", "."], "TS_V_token": ["mips", "\",%s-%s\"", "\",%s\""], "File": "mips", "Func": "mips16e_add_register_range", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32806, "Length": 62} {"ground_truth": ["", "static", "rtx", "mips16e_build_save_restore", "(", "bool", "restore_p", ",", "unsigned", "int", "*", "mask_ptr", ",", "HOST_WIDE_INT", "*", "offset_ptr", ",", "unsigned", "int", "nargs", ",", "HOST_WIDE_INT", "size", ")", "{", "rtx", "pattern", ",", "set", ";", "HOST_WIDE_INT", "offset", ",", "top_offset", ";", "unsigned", "int", "i", ",", "regno", ";", "int", "n", ";", "gcc_assert", "(", "cfun", "->", "machine", "->", "frame", ".", "num_fp", "==", "0", ")", ";", "n", "=", "1", "+", "nargs", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips16e_save_restore_regs", ")", ";", "i", "++", ")", "if", "(", "BITSET_P", "(", "*", "mask_ptr", ",", "mips16e_save_restore_regs", "[", "i", "]", ")", ")", "n", "++", ";", "pattern", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "rtvec_alloc", "(", "n", ")", ")", ";", "n", "=", "0", ";", "set", "=", "gen_rtx_SET", "(", "stack_pointer_rtx", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "restore_p", "?", "size", ":", "-", "size", ")", ")", ";", "RTX_FRAME_RELATED_P", "(", "set", ")", "=", "1", ";", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "++", ")", "=", "set", ";", "top_offset", "=", "restore_p", "?", "size", ":", "0", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nargs", ";", "i", "++", ")", "{", "offset", "=", "top_offset", "+", "i", "*", "UNITS_PER_WORD", ";", "set", "=", "mips16e_save_restore_reg", "(", "restore_p", ",", "true", ",", "offset", ",", "GP_ARG_FIRST", "+", "i", ")", ";", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "++", ")", "=", "set", ";", "}", "offset", "=", "top_offset", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips16e_save_restore_regs", ")", ";", "i", "++", ")", "{", "regno", "=", "mips16e_save_restore_regs", "[", "i", "]", ";", "if", "(", "BITSET_P", "(", "*", "mask_ptr", ",", "regno", ")", ")", "{", "offset", "-=", "UNITS_PER_WORD", ";", "set", "=", "mips16e_save_restore_reg", "(", "restore_p", ",", "false", ",", "offset", ",", "regno", ")", ";", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "++", ")", "=", "set", ";", "*", "mask_ptr", "&=", "~", "(", "1", "<<", "regno", ")", ";", "}", "}", "*", "offset_ptr", "=", "size", "+", "(", "offset", "-", "top_offset", ")", ";", "gcc_assert", "(", "n", "==", "XVECLEN", "(", "pattern", ",", "0", ")", ")", ";", "return", "pattern", ";", "}", ""], "natrual_language": ["Return", "RTL", "for", "a", "MIPS16e", "SAVE", "or", "RESTORE", "instruction", ";", "RESTORE_P", "says", "which", ".", "The", "instruction", "must", ":", "-", "Allocate", "or", "deallocate", "SIZE", "bytes", "in", "total", ";", "SIZE", "is", "known", "to", "be", "nonzero", ".", "-", "Save", "or", "restore", "as", "many", "registers", "in", "*", "MASK_PTR", "as", "possible", ".", "The", "instruction", "saves", "the", "first", "registers", "at", "the", "top", "of", "the", "allocated", "area", ",", "with", "the", "other", "registers", "below", "it", ".", "-", "Save", "NARGS", "argument", "registers", "above", "the", "allocated", "area", ".", "(", "NARGS", "is", "always", "zero", "if", "RESTORE_P", ".", ")", "The", "SAVE", "and", "RESTORE", "instructions", "can", "not", "save", "and", "restore", "all", "general", "registers", ",", "so", "there", "may", "be", "some", "registers", "left", "over", "for", "the", "caller", "to", "handle", ".", "Destructively", "modify", "*", "MASK_PTR", "so", "that", "it", "contains", "the", "registers", "that", "still", "need", "to", "be", "saved", "or", "restored", ".", "The", "caller", "can", "save", "these", "registers", "in", "the", "memory", "immediately", "below", "*", "OFFSET_PTR", ",", "which", "is", "a", "byte", "offset", "from", "the", "bottom", "of", "the", "allocated", "stack", "area", "."], "TS_V_token": ["mips", "0", "1", "0", "0", "1", "0", "0", "0", "0", "0", "0", "1", "0"], "File": "mips", "Func": "mips16e_build_save_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32807, "Length": 315} {"ground_truth": ["", "static", "unsigned", "int", "mips16e_collect_argument_saves", "(", "void", ")", "{", "rtx", "reg_values", "[", "FIRST_PSEUDO_REGISTER", "]", ";", "rtx_insn", "*", "insn", ",", "*", "next", ";", "rtx", "set", ",", "dest", ",", "src", ";", "unsigned", "int", "nargs", ",", "regno", ";", "push_topmost_sequence", "(", ")", ";", "nargs", "=", "0", ";", "memset", "(", "reg_values", ",", "0", ",", "sizeof", "(", "reg_values", ")", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "next", ")", "{", "next", "=", "NEXT_INSN", "(", "insn", ")", ";", "if", "(", "NOTE_P", "(", "insn", ")", "||", "DEBUG_INSN_P", "(", "insn", ")", ")", "continue", ";", "if", "(", "!", "INSN_P", "(", "insn", ")", ")", "break", ";", "set", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "set", ")", "!=", "SET", ")", "break", ";", "dest", "=", "SET_DEST", "(", "set", ")", ";", "src", "=", "SET_SRC", "(", "set", ")", ";", "if", "(", "mips16e_collect_argument_save_p", "(", "dest", ",", "src", ",", "reg_values", ",", "&", "regno", ")", ")", "{", "if", "(", "!", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", ",", "regno", ")", ")", "{", "delete_insn", "(", "insn", ")", ";", "nargs", "=", "MAX", "(", "nargs", ",", "(", "regno", "-", "GP_ARG_FIRST", ")", "+", "1", ")", ";", "}", "}", "else", "if", "(", "REG_P", "(", "dest", ")", "&&", "GET_MODE", "(", "dest", ")", "==", "word_mode", ")", "reg_values", "[", "REGNO", "(", "dest", ")", "]", "=", "mips16e_collect_propagate_value", "(", "src", ",", "reg_values", ")", ";", "else", "break", ";", "}", "pop_topmost_sequence", "(", ")", ";", "return", "nargs", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_prologue", ",", "called", "only", "when", "generating", "MIPS16e", "SAVE", "instructions", ".", "Search", "the", "start", "of", "the", "function", "for", "any", "instructions", "that", "save", "argument", "registers", "into", "their", "caller-allocated", "save", "slots", ".", "Delete", "such", "instructions", "and", "return", "a", "value", "N", "such", "that", "saving", "[", "GP_ARG_FIRST", ",", "GP_ARG_FIRST", "+", "N", ")", "would", "make", "all", "the", "deleted", "instructions", "redundant", "."], "TS_V_token": ["mips", "0", "0", "1"], "File": "mips", "Func": "mips16e_collect_argument_saves", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32808, "Length": 228} {"ground_truth": ["", "static", "bool", "mips16e_collect_argument_save_p", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "*", "reg_values", ",", "unsigned", "int", "*", "regno_ptr", ")", "{", "unsigned", "int", "argno", ",", "regno", ";", "HOST_WIDE_INT", "offset", ",", "required_offset", ";", "rtx", "addr", ",", "base", ";", "if", "(", "!", "MEM_P", "(", "dest", ")", "||", "!", "REG_P", "(", "src", ")", "||", "GET_MODE", "(", "dest", ")", "!=", "word_mode", ")", "return", "false", ";", "regno", "=", "REGNO", "(", "src", ")", ";", "if", "(", "!", "IN_RANGE", "(", "regno", ",", "GP_ARG_FIRST", ",", "GP_ARG_LAST", ")", "||", "reg_values", "[", "regno", "]", ")", "return", "false", ";", "argno", "=", "regno", "-", "GP_ARG_FIRST", ";", "addr", "=", "mips16e_collect_propagate_value", "(", "XEXP", "(", "dest", ",", "0", ")", ",", "reg_values", ")", ";", "mips_split_plus", "(", "addr", ",", "&", "base", ",", "&", "offset", ")", ";", "required_offset", "=", "cfun", "->", "machine", "->", "frame", ".", "total_size", "+", "argno", "*", "UNITS_PER_WORD", ";", "if", "(", "base", "==", "hard_frame_pointer_rtx", ")", "required_offset", "-=", "cfun", "->", "machine", "->", "frame", ".", "hard_frame_pointer_offset", ";", "else", "if", "(", "base", "!=", "stack_pointer_rtx", ")", "return", "false", ";", "if", "(", "offset", "!=", "required_offset", ")", "return", "false", ";", "*", "regno_ptr", "=", "regno", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "(", "set", "DEST", "SRC", ")", "stores", "an", "argument", "register", "into", "its", "caller-allocated", "save", "slot", ",", "storing", "the", "number", "of", "that", "argument", "register", "in", "*", "REGNO_PTR", "if", "so", ".", "REG_VALUES", "is", "as", "for", "mips16e_collect_propagate_value", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips16e_collect_argument_save_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32809, "Length": 176} {"ground_truth": ["", "static", "rtx", "mips16e_collect_propagate_value", "(", "rtx", "x", ",", "rtx", "*", "reg_values", ")", "{", "x", "=", "avoid_constant_pool_reference", "(", "x", ")", ";", "if", "(", "UNARY_P", "(", "x", ")", ")", "{", "rtx", "x0", "=", "mips16e_collect_propagate_value", "(", "XEXP", "(", "x", ",", "0", ")", ",", "reg_values", ")", ";", "return", "simplify_gen_unary", "(", "GET_CODE", "(", "x", ")", ",", "GET_MODE", "(", "x", ")", ",", "x0", ",", "GET_MODE", "(", "XEXP", "(", "x", ",", "0", ")", ")", ")", ";", "}", "if", "(", "ARITHMETIC_P", "(", "x", ")", ")", "{", "rtx", "x0", "=", "mips16e_collect_propagate_value", "(", "XEXP", "(", "x", ",", "0", ")", ",", "reg_values", ")", ";", "rtx", "x1", "=", "mips16e_collect_propagate_value", "(", "XEXP", "(", "x", ",", "1", ")", ",", "reg_values", ")", ";", "return", "simplify_gen_binary", "(", "GET_CODE", "(", "x", ")", ",", "GET_MODE", "(", "x", ")", ",", "x0", ",", "x1", ")", ";", "}", "if", "(", "REG_P", "(", "x", ")", "&&", "reg_values", "[", "REGNO", "(", "x", ")", "]", "&&", "!", "rtx_unstable_p", "(", "reg_values", "[", "REGNO", "(", "x", ")", "]", ")", ")", "return", "reg_values", "[", "REGNO", "(", "x", ")", "]", ";", "return", "x", ";", "}", ""], "natrual_language": ["Return", "a", "simplified", "form", "of", "X", "using", "the", "register", "values", "in", "REG_VALUES", ".", "REG_VALUES", "[", "R", "]", "is", "the", "last", "value", "assigned", "to", "hard", "register", "R", ",", "or", "null", "if", "R", "has", "not", "been", "modified", ".", "This", "function", "is", "rather", "limited", ",", "but", "is", "good", "enough", "for", "our", "purposes", "."], "TS_V_token": ["mips", "0", "0", "0", "1"], "File": "mips", "Func": "mips16e_collect_propagate_value", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32810, "Length": 166} {"ground_truth": ["", "static", "unsigned", "int", "mips16e_find_first_register", "(", "unsigned", "int", "mask", ",", "const", "unsigned", "char", "*", "regs", ",", "unsigned", "int", "size", ")", "{", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "size", ";", "i", "++", ")", "if", "(", "BITSET_P", "(", "mask", ",", "regs", "[", "i", "]", ")", ")", "break", ";", "return", "i", ";", "}", ""], "natrual_language": ["Return", "the", "index", "of", "the", "lowest", "X", "in", "the", "range", "[", "0", ",", "SIZE", ")", "for", "which", "bit", "REGS", "[", "X", "]", "is", "set", "in", "MASK", ".", "Return", "SIZE", "if", "there", "is", "no", "such", "X", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips16e_find_first_register", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32811, "Length": 55} {"ground_truth": ["", "static", "void", "mips16e_mask_registers", "(", "unsigned", "int", "*", "mask_ptr", ",", "const", "unsigned", "char", "*", "regs", ",", "unsigned", "int", "size", ",", "unsigned", "int", "*", "num_regs_ptr", ")", "{", "unsigned", "int", "i", ";", "i", "=", "mips16e_find_first_register", "(", "*", "mask_ptr", ",", "regs", ",", "size", ")", ";", "for", "(", "i", "++", ";", "i", "<", "size", ";", "i", "++", ")", "if", "(", "!", "BITSET_P", "(", "*", "mask_ptr", ",", "regs", "[", "i", "]", ")", ")", "{", "*", "num_regs_ptr", "+=", "1", ";", "*", "mask_ptr", "|=", "1", "<<", "regs", "[", "i", "]", ";", "}", "}", ""], "natrual_language": ["*", "MASK_PTR", "is", "a", "mask", "of", "general-purpose", "registers", "and", "*", "NUM_REGS_PTR", "is", "the", "number", "of", "set", "bits", ".", "If", "*", "MASK_PTR", "contains", "REGS", "[", "X", "]", "for", "some", "X", "in", "[", "0", ",", "SIZE", ")", ",", "adjust", "*", "MASK_PTR", "and", "*", "NUM_REGS_PTR", "so", "that", "the", "same", "is", "true", "for", "all", "indexes", "(", "X", ",", "SIZE", ")", "."], "TS_V_token": ["mips", "1", "1"], "File": "mips", "Func": "mips16e_mask_registers", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32812, "Length": 85} {"ground_truth": ["", "const", "char", "*", "mips16e_output_save_restore", "(", "rtx", "pattern", ",", "HOST_WIDE_INT", "adjust", ")", "{", "static", "char", "buffer", "[", "300", "]", ";", "struct", "mips16e_save_restore_info", "info", ";", "unsigned", "int", "i", ",", "end", ";", "char", "*", "s", ";", "if", "(", "!", "mips16e_save_restore_pattern_p", "(", "pattern", ",", "adjust", ",", "&", "info", ")", ")", "gcc_unreachable", "(", ")", ";", "s", "=", "strcpy", "(", "buffer", ",", "adjust", ">", "0", "?", "\"restore\\t\"", ":", "\"save\\t\"", ")", ";", "s", "+=", "strlen", "(", "s", ")", ";", "if", "(", "info", ".", "nargs", ">", "1", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%s-%s,\"", ",", "reg_names", "[", "GP_ARG_FIRST", "]", ",", "reg_names", "[", "GP_ARG_FIRST", "+", "info", ".", "nargs", "-", "1", "]", ")", ";", "else", "if", "(", "info", ".", "nargs", "==", "1", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%s,\"", ",", "reg_names", "[", "GP_ARG_FIRST", "]", ")", ";", "s", "+=", "sprintf", "(", "s", ",", "\"%d\"", ",", "(", "int", ")", "info", ".", "size", ")", ";", "if", "(", "BITSET_P", "(", "info", ".", "mask", ",", "16", ")", ")", "s", "+=", "sprintf", "(", "s", ",", "\",%s\"", ",", "reg_names", "[", "GP_REG_FIRST", "+", "16", "]", ")", ";", "if", "(", "BITSET_P", "(", "info", ".", "mask", ",", "17", ")", ")", "s", "+=", "sprintf", "(", "s", ",", "\",%s\"", ",", "reg_names", "[", "GP_REG_FIRST", "+", "17", "]", ")", ";", "end", "=", "ARRAY_SIZE", "(", "mips16e_s2_s8_regs", ")", ";", "i", "=", "mips16e_find_first_register", "(", "info", ".", "mask", ",", "mips16e_s2_s8_regs", ",", "end", ")", ";", "if", "(", "i", "<", "end", ")", "s", "=", "mips16e_add_register_range", "(", "s", ",", "mips16e_s2_s8_regs", "[", "end", "-", "1", "]", ",", "mips16e_s2_s8_regs", "[", "i", "]", ")", ";", "end", "=", "ARRAY_SIZE", "(", "mips16e_a0_a3_regs", ")", ";", "i", "=", "mips16e_find_first_register", "(", "info", ".", "mask", ",", "mips16e_a0_a3_regs", ",", "end", ")", ";", "if", "(", "i", "<", "end", ")", "s", "=", "mips16e_add_register_range", "(", "s", ",", "mips16e_a0_a3_regs", "[", "i", "]", ",", "mips16e_a0_a3_regs", "[", "end", "-", "1", "]", ")", ";", "if", "(", "BITSET_P", "(", "info", ".", "mask", ",", "RETURN_ADDR_REGNUM", ")", ")", "s", "+=", "sprintf", "(", "s", ",", "\",%s\"", ",", "reg_names", "[", "RETURN_ADDR_REGNUM", "]", ")", ";", "return", "buffer", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "instruction", "for", "a", "MIPS16e", "SAVE", "or", "RESTORE", "instruction", ".", "PATTERN", "and", "ADJUST", "are", "as", "for", "mips16e_save_restore_pattern_p", "."], "TS_V_token": ["mips", "300", "0", "\"restore\\t\"", "\"save\\t\"", "1", "\"%s-%s,\"", "1", "1", "\"%s,\"", "\"%d\"", "16", "\",%s\"", "16", "17", "\",%s\"", "17", "1", "1", "\",%s\""], "File": "mips", "Func": "mips16e_output_save_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32813, "Length": 317} {"ground_truth": ["", "bool", "mips16e_save_restore_pattern_p", "(", "rtx", "pattern", ",", "HOST_WIDE_INT", "adjust", ",", "struct", "mips16e_save_restore_info", "*", "info", ")", "{", "unsigned", "int", "i", ",", "nargs", ",", "mask", ",", "extra", ";", "HOST_WIDE_INT", "top_offset", ",", "save_offset", ",", "offset", ";", "rtx", "set", ",", "reg", ",", "mem", ",", "base", ";", "int", "n", ";", "if", "(", "!", "GENERATE_MIPS16E_SAVE_RESTORE", ")", "return", "false", ";", "top_offset", "=", "adjust", ">", "0", "?", "adjust", ":", "0", ";", "save_offset", "=", "top_offset", "-", "UNITS_PER_WORD", ";", "mask", "=", "0", ";", "nargs", "=", "0", ";", "i", "=", "0", ";", "for", "(", "n", "=", "1", ";", "n", "<", "XVECLEN", "(", "pattern", ",", "0", ")", ";", "n", "++", ")", "{", "set", "=", "XVECEXP", "(", "pattern", ",", "0", ",", "n", ")", ";", "if", "(", "GET_CODE", "(", "set", ")", "!=", "SET", ")", "return", "false", ";", "mem", "=", "adjust", ">", "0", "?", "SET_SRC", "(", "set", ")", ":", "SET_DEST", "(", "set", ")", ";", "if", "(", "!", "MEM_P", "(", "mem", ")", ")", "return", "false", ";", "mips_split_plus", "(", "XEXP", "(", "mem", ",", "0", ")", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "base", "!=", "stack_pointer_rtx", ")", "return", "false", ";", "reg", "=", "adjust", ">", "0", "?", "SET_DEST", "(", "set", ")", ":", "SET_SRC", "(", "set", ")", ";", "if", "(", "!", "REG_P", "(", "reg", ")", ")", "return", "false", ";", "if", "(", "offset", "==", "top_offset", "+", "nargs", "*", "UNITS_PER_WORD", "&&", "REGNO", "(", "reg", ")", "==", "GP_ARG_FIRST", "+", "nargs", ")", "nargs", "++", ";", "else", "if", "(", "offset", "==", "save_offset", ")", "{", "while", "(", "mips16e_save_restore_regs", "[", "i", "++", "]", "!=", "REGNO", "(", "reg", ")", ")", "if", "(", "i", "==", "ARRAY_SIZE", "(", "mips16e_save_restore_regs", ")", ")", "return", "false", ";", "mask", "|=", "1", "<<", "REGNO", "(", "reg", ")", ";", "save_offset", "-=", "UNITS_PER_WORD", ";", "}", "else", "return", "false", ";", "}", "extra", "=", "0", ";", "mips16e_mask_registers", "(", "&", "mask", ",", "mips16e_s2_s8_regs", ",", "ARRAY_SIZE", "(", "mips16e_s2_s8_regs", ")", ",", "&", "extra", ")", ";", "mips16e_mask_registers", "(", "&", "mask", ",", "mips16e_a0_a3_regs", ",", "ARRAY_SIZE", "(", "mips16e_a0_a3_regs", ")", ",", "&", "extra", ")", ";", "if", "(", "extra", "!=", "0", ")", "return", "false", ";", "if", "(", "nargs", ">", "0", "&&", "BITSET_P", "(", "mask", ",", "GP_ARG_FIRST", "+", "nargs", "-", "1", ")", ")", "return", "false", ";", "if", "(", "info", ")", "{", "info", "->", "nargs", "=", "nargs", ";", "info", "->", "mask", "=", "mask", ";", "info", "->", "size", "=", "(", "adjust", ">", "0", "?", "adjust", ":", "-", "adjust", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["PATTERN", "is", "a", "PARALLEL", "whose", "first", "element", "adds", "ADJUST", "to", "the", "stack", "pointer", ".", "Return", "true", "if", "PATTERN", "matches", "the", "kind", "of", "instruction", "generated", "by", "mips16e_build_save_restore", ".", "If", "INFO", "is", "nonnull", ",", "initialize", "it", "when", "returning", "true", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "1", "0", "0", "0", "1", "0"], "File": "mips", "Func": "mips16e_save_restore_pattern_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32814, "Length": 377} {"ground_truth": ["", "static", "rtx", "mips16e_save_restore_reg", "(", "bool", "restore_p", ",", "bool", "reg_parm_p", ",", "HOST_WIDE_INT", "offset", ",", "unsigned", "int", "regno", ")", "{", "rtx", "reg", ",", "mem", ";", "mem", "=", "gen_frame_mem", "(", "SImode", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "offset", ")", ")", ";", "reg", "=", "gen_rtx_REG", "(", "SImode", ",", "regno", ")", ";", "if", "(", "restore_p", ")", "{", "mips_add_cfa_restore", "(", "reg", ")", ";", "return", "gen_rtx_SET", "(", "reg", ",", "mem", ")", ";", "}", "if", "(", "reg_parm_p", ")", "return", "gen_rtx_SET", "(", "mem", ",", "reg", ")", ";", "return", "mips_frame_set", "(", "mem", ",", "reg", ")", ";", "}", ""], "natrual_language": ["Return", "a", "move", "between", "register", "REGNO", "and", "memory", "location", "SP", "+", "OFFSET", ".", "REG_PARM_P", "is", "true", "if", "SP", "+", "OFFSET", "belongs", "to", "REG_PARM_STACK_SPACE", ".", "Make", "the", "move", "a", "load", "if", "RESTORE_P", ",", "otherwise", "make", "it", "a", "store", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16e_save_restore_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32815, "Length": 88} {"ground_truth": ["", "static", "rtx_code_label", "*", "mips16_add_constant", "(", "struct", "mips16_constant_pool", "*", "pool", ",", "rtx", "value", ",", "machine_mode", "mode", ")", "{", "struct", "mips16_constant", "*", "*", "p", ",", "*", "c", ";", "bool", "first_of_size_p", ";", "first_of_size_p", "=", "true", ";", "for", "(", "p", "=", "&", "pool", "->", "first", ";", "*", "p", "!=", "0", ";", "p", "=", "&", "(", "*", "p", ")", "->", "next", ")", "{", "if", "(", "mode", "==", "(", "*", "p", ")", "->", "mode", "&&", "rtx_equal_p", "(", "value", ",", "(", "*", "p", ")", "->", "value", ")", ")", "return", "(", "*", "p", ")", "->", "label", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "<", "GET_MODE_SIZE", "(", "(", "*", "p", ")", "->", "mode", ")", ")", "break", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "==", "GET_MODE_SIZE", "(", "(", "*", "p", ")", "->", "mode", ")", ")", "first_of_size_p", "=", "false", ";", "}", "if", "(", "pool", "->", "first", "==", "0", ")", "pool", "->", "highest_address", "=", "pool", "->", "insn_address", "-", "(", "UNITS_PER_WORD", "-", "2", ")", "+", "0x8000", ";", "pool", "->", "highest_address", "-=", "GET_MODE_SIZE", "(", "mode", ")", ";", "if", "(", "first_of_size_p", ")", "pool", "->", "highest_address", "-=", "GET_MODE_SIZE", "(", "mode", ")", "-", "1", ";", "c", "=", "XNEW", "(", "struct", "mips16_constant", ")", ";", "c", "->", "value", "=", "value", ";", "c", "->", "mode", "=", "mode", ";", "c", "->", "label", "=", "gen_label_rtx", "(", ")", ";", "c", "->", "next", "=", "*", "p", ";", "*", "p", "=", "c", ";", "return", "c", "->", "label", ";", "}", ""], "natrual_language": ["Add", "constant", "VALUE", "to", "POOL", "and", "return", "its", "label", ".", "MODE", "is", "the", "value", "'s", "mode", "(", "used", "for", "CONST_INTs", ",", "etc", ".", ")", "."], "TS_V_token": ["mips", "0", "0", "2", "0x8000", "1"], "File": "mips", "Func": "mips16_add_constant", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32816, "Length": 224} {"ground_truth": ["", "static", "void", "mips16_build_function_stub", "(", "void", ")", "{", "const", "char", "*", "fnname", ",", "*", "alias_name", ",", "*", "separator", ";", "char", "*", "secname", ",", "*", "stubname", ";", "tree", "stubdecl", ";", "unsigned", "int", "f", ";", "rtx", "symbol", ",", "alias", ";", "symbol", "=", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ";", "alias", "=", "mips16_local_alias", "(", "symbol", ")", ";", "fnname", "=", "targetm", ".", "strip_name_encoding", "(", "XSTR", "(", "symbol", ",", "0", ")", ")", ";", "alias_name", "=", "targetm", ".", "strip_name_encoding", "(", "XSTR", "(", "alias", ",", "0", ")", ")", ";", "secname", "=", "ACONCAT", "(", "(", "\".mips16.fn.\"", ",", "fnname", ",", "NULL", ")", ")", ";", "stubname", "=", "ACONCAT", "(", "(", "\"__fn_stub_\"", ",", "fnname", ",", "NULL", ")", ")", ";", "stubdecl", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FUNCTION_DECL", ",", "get_identifier", "(", "stubname", ")", ",", "build_function_type_list", "(", "void_type_node", ",", "NULL_TREE", ")", ")", ";", "set_decl_section_name", "(", "stubdecl", ",", "secname", ")", ";", "DECL_RESULT", "(", "stubdecl", ")", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "RESULT_DECL", ",", "NULL_TREE", ",", "void_type_node", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t# Stub function for %s (\"", ",", "current_function_name", "(", ")", ")", ";", "separator", "=", "\"\"", ";", "for", "(", "f", "=", "(", "unsigned", "int", ")", "crtl", "->", "args", ".", "info", ".", "fp_code", ";", "f", "!=", "0", ";", "f", ">>=", "2", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"%s%s\"", ",", "separator", ",", "(", "f", "&", "3", ")", "==", "1", "?", "\"float\"", ":", "\"double\"", ")", ";", "separator", "=", "\", \"", ";", "}", "fprintf", "(", "asm_out_file", ",", "\")\\n\"", ")", ";", "assemble_start_function", "(", "stubdecl", ",", "stubname", ")", ";", "mips_start_function_definition", "(", "stubname", ",", "false", ")", ";", "if", "(", "TARGET_ABICALLS_PIC2", ")", "{", "if", "(", "TARGET_ABSOLUTE_ABICALLS", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.option\\tpic0\\n\"", ")", ";", "else", "{", "output_asm_insn", "(", "\"%(.cpload\\t%^%)\"", ",", "NULL", ")", ";", "output_asm_insn", "(", "\".reloc\\t0,R_MIPS_NONE,%0\"", ",", "&", "symbol", ")", ";", "symbol", "=", "alias", ";", "}", "}", "output_asm_insn", "(", "\"la\\t%^,%0\"", ",", "&", "symbol", ")", ";", "mips_output_args_xfer", "(", "crtl", "->", "args", ".", "info", ".", "fp_code", ",", "'f'", ")", ";", "output_asm_insn", "(", "\"jr\\t%^\"", ",", "NULL", ")", ";", "if", "(", "TARGET_ABICALLS_PIC2", "&&", "TARGET_ABSOLUTE_ABICALLS", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.option\\tpic2\\n\"", ")", ";", "mips_end_function_definition", "(", "stubname", ")", ";", "ASM_OUTPUT_DEF", "(", "asm_out_file", ",", "alias_name", ",", "fnname", ")", ";", "switch_to_section", "(", "function_section", "(", "current_function_decl", ")", ")", ";", "}", ""], "natrual_language": ["Write", "a", "MIPS16", "stub", "for", "the", "current", "function", ".", "This", "stub", "is", "used", "for", "functions", "which", "take", "arguments", "in", "the", "floating-point", "registers", ".", "It", "is", "normal-mode", "code", "that", "moves", "the", "floating-point", "arguments", "into", "the", "general", "registers", "and", "then", "jumps", "to", "the", "MIPS16", "code", "."], "TS_V_token": ["mips", "0", "0", "0", "\".mips16.fn.\"", "\"__fn_stub_\"", "\"\\t# Stub function for %s (\"", "\"\"", "0", "2", "\"%s%s\"", "3", "1", "\"float\"", "\"double\"", "\", \"", "\")\\n\"", "\"\\t.option\\tpic0\\n\"", "\"%(.cpload\\t%^%)\"", "\".reloc\\t0,R_MIPS_NONE,%0\"", "\"la\\t%^,%0\"", "\"jr\\t%^\"", "\"\\t.option\\tpic2\\n\""], "File": "mips", "Func": "mips16_build_function_stub", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32817, "Length": 344} {"ground_truth": ["", "static", "const", "char", "*", "mips16_call_stub_mode_suffix", "(", "machine_mode", "mode", ")", "{", "if", "(", "mode", "==", "SFmode", ")", "return", "\"sf\"", ";", "else", "if", "(", "mode", "==", "DFmode", ")", "return", "\"df\"", ";", "else", "if", "(", "mode", "==", "SCmode", ")", "return", "\"sc\"", ";", "else", "if", "(", "mode", "==", "DCmode", ")", "return", "\"dc\"", ";", "else", "if", "(", "mode", "==", "V2SFmode", ")", "{", "gcc_assert", "(", "TARGET_PAIRED_SINGLE_FLOAT", ")", ";", "return", "\"df\"", ";", "}", "else", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Return", "the", "two-character", "string", "that", "identifies", "floating-point", "return", "mode", "MODE", "in", "the", "name", "of", "a", "MIPS16", "function", "stub", "."], "TS_V_token": ["mips", "\"sf\"", "\"df\"", "\"sc\"", "\"dc\"", "\"df\""], "File": "mips", "Func": "mips16_call_stub_mode_suffix", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32818, "Length": 72} {"ground_truth": ["", "static", "bool", "mips16_cfun_returns_in_fpr_p", "(", "void", ")", "{", "tree", "return_type", "=", "DECL_RESULT", "(", "current_function_decl", ")", ";", "return", "(", "TARGET_MIPS16", "&&", "TARGET_HARD_FLOAT_ABI", "&&", "!", "aggregate_value_p", "(", "return_type", ",", "current_function_decl", ")", "&&", "mips_return_mode_in_fpr_p", "(", "DECL_MODE", "(", "return_type", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "returns", "its", "value", "in", "a", "floating-point", "register", "in", "MIPS16", "mode", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_cfun_returns_in_fpr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32819, "Length": 39} {"ground_truth": ["", "static", "int", "mips16_constant_cost", "(", "int", "code", ",", "HOST_WIDE_INT", "x", ")", "{", "switch", "(", "code", ")", "{", "case", "ASHIFT", ":", "case", "ASHIFTRT", ":", "case", "LSHIFTRT", ":", "if", "(", "IN_RANGE", "(", "x", ",", "1", ",", "8", ")", ")", "return", "0", ";", "return", "COSTS_N_INSNS", "(", "1", ")", ";", "case", "PLUS", ":", "if", "(", "IN_RANGE", "(", "x", ",", "-", "128", ",", "127", ")", ")", "return", "0", ";", "if", "(", "SMALL_OPERAND", "(", "x", ")", ")", "return", "COSTS_N_INSNS", "(", "1", ")", ";", "return", "-", "1", ";", "case", "LEU", ":", "if", "(", "x", "==", "-", "1", ")", "return", "-", "1", ";", "case", "LE", ":", "x", "+=", "1", ";", "case", "XOR", ":", "case", "LT", ":", "case", "LTU", ":", "if", "(", "IN_RANGE", "(", "x", ",", "0", ",", "255", ")", ")", "return", "0", ";", "if", "(", "SMALL_OPERAND_UNSIGNED", "(", "x", ")", ")", "return", "COSTS_N_INSNS", "(", "1", ")", ";", "return", "-", "1", ";", "case", "EQ", ":", "case", "NE", ":", "if", "(", "x", "==", "0", ")", "return", "0", ";", "return", "-", "1", ";", "default", ":", "return", "-", "1", ";", "}", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "X", "when", "used", "as", "an", "operand", "to", "the", "MIPS16", "instruction", "that", "implements", "CODE", ".", "Return", "-1", "if", "there", "is", "no", "such", "instruction", ",", "or", "if", "X", "is", "not", "a", "valid", "immediate", "operand", "for", "it", "."], "TS_V_token": ["mips", "1", "8", "0", "1", "128", "127", "0", "1", "1", "1", "1", "1", "0", "255", "0", "1", "1", "0", "0", "1", "1"], "File": "mips", "Func": "mips16_constant_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32820, "Length": 168} {"ground_truth": ["", "static", "void", "mips16_copy_fpr_return_value", "(", "void", ")", "{", "rtx", "fn", ",", "insn", ",", "retval", ";", "tree", "return_type", ";", "machine_mode", "return_mode", ";", "const", "char", "*", "name", ";", "return_type", "=", "DECL_RESULT", "(", "current_function_decl", ")", ";", "return_mode", "=", "DECL_MODE", "(", "return_type", ")", ";", "name", "=", "ACONCAT", "(", "(", "\"__mips16_ret_\"", ",", "mips16_call_stub_mode_suffix", "(", "return_mode", ")", ",", "NULL", ")", ")", ";", "fn", "=", "mips16_stub_function", "(", "name", ")", ";", "SYMBOL_REF_FLAGS", "(", "fn", ")", "|=", "SYMBOL_FLAG_BIND_NOW", ";", "retval", "=", "gen_rtx_REG", "(", "return_mode", ",", "GP_RETURN", ")", ";", "insn", "=", "mips_expand_call", "(", "MIPS_CALL_EPILOGUE", ",", "retval", ",", "fn", ",", "const0_rtx", ",", "NULL_RTX", ",", "false", ")", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "retval", ")", ";", "}", ""], "natrual_language": ["The", "current", "function", "is", "a", "MIPS16", "function", "that", "returns", "a", "value", "in", "an", "FPR", ".", "Copy", "the", "return", "value", "from", "its", "soft-float", "to", "its", "hard-float", "location", ".", "libgcc2", "has", "special", "non-MIPS16", "helper", "functions", "for", "each", "case", "."], "TS_V_token": ["mips", "\"__mips16_ret_\""], "File": "mips", "Func": "mips16_copy_fpr_return_value", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32821, "Length": 107} {"ground_truth": ["", "static", "void", "mips16_emit_constants", "(", "struct", "mips16_constant", "*", "constants", ",", "rtx_insn", "*", "insn", ")", "{", "int", "label_num", "=", "constants", "?", "CODE_LABEL_NUMBER", "(", "constants", "->", "label", ")", ":", "0", ";", "struct", "mips16_constant", "*", "c", ",", "*", "next", ";", "int", "align", ";", "align", "=", "0", ";", "if", "(", "constants", ")", "insn", "=", "emit_insn_after", "(", "gen_consttable", "(", "GEN_INT", "(", "label_num", ")", ")", ",", "insn", ")", ";", "for", "(", "c", "=", "constants", ";", "c", "!=", "NULL", ";", "c", "=", "next", ")", "{", "if", "(", "align", "<", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ")", "{", "int", "align_log", "=", "floor_log2", "(", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ")", ";", "insn", "=", "emit_insn_after", "(", "gen_align", "(", "GEN_INT", "(", "align_log", ")", ")", ",", "insn", ")", ";", "}", "align", "=", "GET_MODE_SIZE", "(", "c", "->", "mode", ")", ";", "insn", "=", "emit_label_after", "(", "c", "->", "label", ",", "insn", ")", ";", "insn", "=", "mips16_emit_constants_1", "(", "c", "->", "mode", ",", "c", "->", "value", ",", "insn", ")", ";", "next", "=", "c", "->", "next", ";", "free", "(", "c", ")", ";", "}", "if", "(", "constants", ")", "insn", "=", "emit_insn_after", "(", "gen_consttable_end", "(", "GEN_INT", "(", "label_num", ")", ")", ",", "insn", ")", ";", "emit_barrier_after", "(", "insn", ")", ";", "}", ""], "natrual_language": ["Dump", "out", "the", "constants", "in", "CONSTANTS", "after", "INSN", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips16_emit_constants", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32822, "Length": 190} {"ground_truth": ["", "static", "rtx_insn", "*", "mips16_emit_constants_1", "(", "machine_mode", "mode", ",", "rtx", "value", ",", "rtx_insn", "*", "insn", ")", "{", "if", "(", "SCALAR_INT_MODE_P", "(", "mode", ")", "||", "ALL_SCALAR_FIXED_POINT_MODE_P", "(", "mode", ")", ")", "{", "rtx", "size", "=", "GEN_INT", "(", "GET_MODE_SIZE", "(", "mode", ")", ")", ";", "return", "emit_insn_after", "(", "gen_consttable_int", "(", "value", ",", "size", ")", ",", "insn", ")", ";", "}", "if", "(", "SCALAR_FLOAT_MODE_P", "(", "mode", ")", ")", "return", "emit_insn_after", "(", "gen_consttable_float", "(", "value", ")", ",", "insn", ")", ";", "if", "(", "VECTOR_MODE_P", "(", "mode", ")", ")", "{", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "CONST_VECTOR_NUNITS", "(", "value", ")", ";", "i", "++", ")", "insn", "=", "mips16_emit_constants_1", "(", "GET_MODE_INNER", "(", "mode", ")", ",", "CONST_VECTOR_ELT", "(", "value", ",", "i", ")", ",", "insn", ")", ";", "return", "insn", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Output", "constant", "VALUE", "after", "instruction", "INSN", "and", "return", "the", "last", "instruction", "emitted", ".", "MODE", "is", "the", "mode", "of", "the", "constant", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips16_emit_constants_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32823, "Length": 127} {"ground_truth": ["", "void", "mips16_expand_get_fcsr", "(", "rtx", "target", ")", "{", "if", "(", "!", "mips16_get_fcsr_stub", ")", "mips16_get_fcsr_stub", "=", "new", "mips16_get_fcsr_one_only_stub", "(", ")", ";", "rtx", "fn", "=", "mips16_stub_call_address", "(", "mips16_get_fcsr_stub", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_mips_get_fcsr_mips16", ",", "(", "fn", ")", ")", ")", ";", "emit_move_insn", "(", "target", ",", "gen_rtx_REG", "(", "SImode", ",", "GET_FCSR_REGNUM", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "``", "TARGET", "=", "__builtin_mips_get_fcsr", "(", ")", "''", "for", "MIPS16", ",", "using", "a", "stub", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_expand_get_fcsr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32824, "Length": 52} {"ground_truth": ["", "void", "mips16_expand_set_fcsr", "(", "rtx", "newval", ")", "{", "if", "(", "!", "mips16_set_fcsr_stub", ")", "mips16_set_fcsr_stub", "=", "new", "mips16_set_fcsr_one_only_stub", "(", ")", ";", "rtx", "fn", "=", "mips16_stub_call_address", "(", "mips16_set_fcsr_stub", ")", ";", "emit_move_insn", "(", "gen_rtx_REG", "(", "SImode", ",", "SET_FCSR_REGNUM", ")", ",", "newval", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_mips_set_fcsr_mips16", ",", "(", "fn", ")", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "__builtin_mips_set_fcsr", "(", "TARGET", ")", "for", "MIPS16", ",", "using", "a", "stub", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_expand_set_fcsr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32825, "Length": 52} {"ground_truth": ["", "static", "rtx", "mips16_gp_pseudo_reg", "(", "void", ")", "{", "if", "(", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", "==", "NULL_RTX", ")", "{", "rtx_insn", "*", "scan", ";", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "push_topmost_sequence", "(", ")", ";", "scan", "=", "get_insns", "(", ")", ";", "while", "(", "NEXT_INSN", "(", "scan", ")", "&&", "!", "INSN_P", "(", "NEXT_INSN", "(", "scan", ")", ")", ")", "scan", "=", "NEXT_INSN", "(", "scan", ")", ";", "rtx", "set", "=", "gen_load_const_gp", "(", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", ")", ";", "rtx_insn", "*", "insn", "=", "emit_insn_after", "(", "set", ",", "scan", ")", ";", "INSN_LOCATION", "(", "insn", ")", "=", "0", ";", "pop_topmost_sequence", "(", ")", ";", "}", "return", "cfun", "->", "machine", "->", "mips16_gp_pseudo_rtx", ";", "}", ""], "natrual_language": ["If", "we", "can", "access", "small", "data", "directly", "(", "using", "gp-relative", "relocation", "operators", ")", "return", "the", "small", "data", "pointer", ",", "otherwise", "return", "null", ".", "For", "each", "mips16", "function", "which", "refers", "to", "GP", "relative", "symbols", ",", "we", "use", "a", "pseudo", "register", ",", "initialized", "at", "the", "start", "of", "the", "function", ",", "to", "hold", "the", "$", "gp", "value", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips16_gp_pseudo_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32826, "Length": 109} {"ground_truth": ["", "static", "int", "mips16_insn_length", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "JUMP_TABLE_DATA_P", "(", "insn", ")", ")", "{", "rtx", "body", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "body", ")", "==", "ADDR_VEC", ")", "return", "GET_MODE_SIZE", "(", "GET_MODE", "(", "body", ")", ")", "*", "XVECLEN", "(", "body", ",", "0", ")", ";", "else", "if", "(", "GET_CODE", "(", "body", ")", "==", "ADDR_DIFF_VEC", ")", "return", "GET_MODE_SIZE", "(", "GET_MODE", "(", "body", ")", ")", "*", "XVECLEN", "(", "body", ",", "1", ")", ";", "else", "gcc_unreachable", "(", ")", ";", "}", "return", "get_attr_length", "(", "insn", ")", ";", "}", ""], "natrual_language": ["Return", "the", "length", "of", "instruction", "INSN", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips16_insn_length", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32827, "Length": 89} {"ground_truth": ["", "static", "void", "mips16_lay_out_constants", "(", "bool", "split_p", ")", "{", "struct", "mips16_constant_pool", "pool", ";", "rtx_insn", "*", "insn", ",", "*", "barrier", ";", "if", "(", "!", "TARGET_MIPS16_PCREL_LOADS", ")", "return", ";", "if", "(", "split_p", ")", "{", "if", "(", "mips_cfg_in_reorg", "(", ")", ")", "split_all_insns", "(", ")", ";", "else", "split_all_insns_noflow", "(", ")", ";", "}", "barrier", "=", "0", ";", "memset", "(", "&", "pool", ",", "0", ",", "sizeof", "(", "pool", ")", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "{", "if", "(", "USEFUL_INSN_P", "(", "insn", ")", ")", "mips16_rewrite_pool_refs", "(", "insn", ",", "&", "pool", ")", ";", "pool", ".", "insn_address", "+=", "mips16_insn_length", "(", "insn", ")", ";", "if", "(", "pool", ".", "first", "!=", "NULL", ")", "{", "if", "(", "barrier", "==", "0", "&&", "pool", ".", "insn_address", "+", "4", ">", "pool", ".", "highest_address", ")", "{", "rtx_code_label", "*", "label", ";", "rtx_insn", "*", "jump", ";", "label", "=", "gen_label_rtx", "(", ")", ";", "jump", "=", "emit_jump_insn_before", "(", "gen_jump", "(", "label", ")", ",", "insn", ")", ";", "JUMP_LABEL", "(", "jump", ")", "=", "label", ";", "LABEL_NUSES", "(", "label", ")", "=", "1", ";", "barrier", "=", "emit_barrier_after", "(", "jump", ")", ";", "emit_label_after", "(", "label", ",", "barrier", ")", ";", "pool", ".", "insn_address", "+=", "4", ";", "}", "if", "(", "pool", ".", "insn_address", ">", "pool", ".", "highest_address", ")", "{", "mips16_emit_constants", "(", "pool", ".", "first", ",", "barrier", ")", ";", "pool", ".", "first", "=", "NULL", ";", "barrier", "=", "0", ";", "}", "else", "if", "(", "BARRIER_P", "(", "insn", ")", ")", "barrier", "=", "insn", ";", "}", "}", "mips16_emit_constants", "(", "pool", ".", "first", ",", "get_last_insn", "(", ")", ")", ";", "}", ""], "natrual_language": ["Build", "MIPS16", "constant", "pools", "."], "TS_V_token": ["mips", "0", "0", "0", "4", "1", "4", "0"], "File": "mips", "Func": "mips16_lay_out_constants", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32828, "Length": 250} {"ground_truth": ["", "static", "void", "mips16_load_branch_target", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "TARGET_ABICALLS", "&&", "!", "TARGET_ABSOLUTE_ABICALLS", ")", "{", "rtx", "page", ",", "low", ";", "if", "(", "mips_cfun_has_cprestore_slot_p", "(", ")", ")", "mips_emit_move", "(", "dest", ",", "mips_cprestore_slot", "(", "dest", ",", "true", ")", ")", ";", "else", "mips_emit_move", "(", "dest", ",", "pic_offset_table_rtx", ")", ";", "page", "=", "mips_unspec_address", "(", "src", ",", "SYMBOL_GOTOFF_PAGE", ")", ";", "low", "=", "mips_unspec_address", "(", "src", ",", "SYMBOL_GOT_PAGE_OFST", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "PMODE_INSN", "(", "gen_unspec_got", ",", "(", "dest", ",", "page", ")", ")", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "gen_rtx_LO_SUM", "(", "Pmode", ",", "dest", ",", "low", ")", ")", ")", ";", "}", "else", "{", "src", "=", "mips_unspec_address", "(", "src", ",", "SYMBOL_ABSOLUTE", ")", ";", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "code", "to", "load", "LABEL_REF", "SRC", "into", "MIPS16", "register", "DEST", ".", "This", "is", "called", "very", "late", "in", "mips_reorg", ",", "but", "the", "caller", "is", "required", "to", "run", "mips16_lay_out_constants", "on", "the", "result", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_load_branch_target", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32829, "Length": 125} {"ground_truth": ["", "static", "rtx", "mips16_local_alias", "(", "rtx", "func", ")", "{", "if", "(", "mips16_local_aliases", "==", "NULL", ")", "mips16_local_aliases", "=", "hash_map", "<", "nofree_string_hash", ",", "rtx", ">", "::", "create_ggc", "(", "37", ")", ";", "bool", "existed", ";", "const", "char", "*", "func_name", "=", "XSTR", "(", "func", ",", "0", ")", ";", "rtx", "*", "slot", "=", "&", "mips16_local_aliases", "->", "get_or_insert", "(", "func_name", ",", "&", "existed", ")", ";", "gcc_assert", "(", "slot", "!=", "NULL", ")", ";", "if", "(", "!", "existed", ")", "{", "rtx", "local", ";", "func_name", "=", "targetm", ".", "strip_name_encoding", "(", "XSTR", "(", "func", ",", "0", ")", ")", ";", "const", "char", "*", "local_name", "=", "ACONCAT", "(", "(", "\"__fn_local_\"", ",", "func_name", ",", "NULL", ")", ")", ";", "local", "=", "gen_rtx_SYMBOL_REF", "(", "Pmode", ",", "ggc_strdup", "(", "local_name", ")", ")", ";", "SYMBOL_REF_FLAGS", "(", "local", ")", "=", "SYMBOL_REF_FLAGS", "(", "func", ")", "|", "SYMBOL_FLAG_LOCAL", ";", "*", "slot", "=", "local", ";", "}", "return", "*", "slot", ";", "}", ""], "natrual_language": ["FUNC", "is", "the", "symbol", "for", "a", "locally-defined", "hard-float", "MIPS16", "function", ".", "Return", "a", "local", "alias", "for", "it", ",", "creating", "a", "new", "one", "if", "necessary", "."], "TS_V_token": ["mips", "37", "0", "0", "\"__fn_local_\""], "File": "mips", "Func": "mips16_local_alias", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32830, "Length": 139} {"ground_truth": ["", "static", "bool", "mips16_local_function_p", "(", "const_rtx", "x", ")", "{", "return", "(", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", "&&", "SYMBOL_REF_LOCAL_P", "(", "x", ")", "&&", "!", "SYMBOL_REF_EXTERNAL_P", "(", "x", ")", "&&", "(", "mips_get_compress_mode", "(", "SYMBOL_REF_DECL", "(", "x", ")", ")", "&", "MASK_MIPS16", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "function", "X", "is", "a", "locally-defined", "and", "locally-binding", "MIPS16", "function", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_local_function_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32831, "Length": 42} {"ground_truth": ["", "static", "void", "mips16_rewrite_pool_constant", "(", "struct", "mips16_constant_pool", "*", "pool", ",", "rtx", "*", "x", ")", "{", "rtx", "base", ",", "offset", ";", "rtx_code_label", "*", "label", ";", "split_const", "(", "*", "x", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "GET_CODE", "(", "base", ")", "==", "SYMBOL_REF", "&&", "CONSTANT_POOL_ADDRESS_P", "(", "base", ")", ")", "{", "label", "=", "mips16_add_constant", "(", "pool", ",", "copy_rtx", "(", "get_pool_constant", "(", "base", ")", ")", ",", "get_pool_mode", "(", "base", ")", ")", ";", "base", "=", "gen_rtx_LABEL_REF", "(", "Pmode", ",", "label", ")", ";", "*", "x", "=", "mips_unspec_address_offset", "(", "base", ",", "offset", ",", "SYMBOL_PC_RELATIVE", ")", ";", "}", "}", ""], "natrual_language": ["If", "*", "X", "is", "a", "symbolic", "constant", "that", "refers", "to", "the", "constant", "pool", ",", "add", "the", "constant", "to", "POOL", "and", "rewrite", "*", "X", "to", "use", "the", "constant", "'s", "label", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_rewrite_pool_constant", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32832, "Length": 93} {"ground_truth": ["", "static", "void", "mips16_rewrite_pool_refs", "(", "rtx_insn", "*", "insn", ",", "struct", "mips16_constant_pool", "*", "pool", ")", "{", "subrtx_ptr_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX_PTR", "(", "iter", ",", "array", ",", "&", "PATTERN", "(", "insn", ")", ",", "ALL", ")", "{", "rtx", "*", "loc", "=", "*", "iter", ";", "if", "(", "force_to_mem_operand", "(", "*", "loc", ",", "Pmode", ")", ")", "{", "rtx", "mem", "=", "force_const_mem", "(", "GET_MODE", "(", "*", "loc", ")", ",", "*", "loc", ")", ";", "validate_change", "(", "insn", ",", "loc", ",", "mem", ",", "false", ")", ";", "}", "if", "(", "MEM_P", "(", "*", "loc", ")", ")", "{", "mips16_rewrite_pool_constant", "(", "pool", ",", "&", "XEXP", "(", "*", "loc", ",", "0", ")", ")", ";", "iter", ".", "skip_subrtxes", "(", ")", ";", "}", "else", "{", "if", "(", "TARGET_MIPS16_TEXT_LOADS", ")", "mips16_rewrite_pool_constant", "(", "pool", ",", "loc", ")", ";", "if", "(", "GET_CODE", "(", "*", "loc", ")", "==", "CONST", "||", "(", "GET_CODE", "(", "*", "loc", ")", "==", "UNSPEC", "&&", "XINT", "(", "*", "loc", ",", "1", ")", "==", "UNSPEC_TLS_GET_TP", ")", ")", "iter", ".", "skip_subrtxes", "(", ")", ";", "}", "}", "}", ""], "natrual_language": ["Rewrite", "*", "X", "so", "that", "constant", "pool", "references", "refer", "to", "the", "constant", "'s", "label", "instead", ".", "DATA", "points", "to", "the", "constant", "pool", "structure", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips16_rewrite_pool_refs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32833, "Length": 161} {"ground_truth": ["", "static", "void", "mips16_split_long_branches", "(", "void", ")", "{", "bool", "something_changed", ";", "if", "(", "!", "TARGET_MIPS16", ")", "return", ";", "do", "{", "rtx_insn", "*", "insn", ";", "rtx_jump_insn", "*", "jump_insn", ";", "shorten_branches", "(", "get_insns", "(", ")", ")", ";", "something_changed", "=", "false", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "if", "(", "(", "jump_insn", "=", "dyn_cast", "<", "rtx_jump_insn", "*", ">", "(", "insn", ")", ")", "&&", "get_attr_length", "(", "jump_insn", ")", ">", "4", "&&", "(", "any_condjump_p", "(", "jump_insn", ")", "||", "any_uncondjump_p", "(", "jump_insn", ")", ")", ")", "{", "rtx", "old_label", ",", "temp", ",", "saved_temp", ";", "rtx_code_label", "*", "new_label", ";", "rtx", "target", ";", "rtx_insn", "*", "jump", ",", "*", "jump_sequence", ";", "start_sequence", "(", ")", ";", "saved_temp", "=", "gen_rtx_REG", "(", "Pmode", ",", "AT_REGNUM", ")", ";", "temp", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_REG_FIRST", "+", "2", ")", ";", "emit_move_insn", "(", "saved_temp", ",", "temp", ")", ";", "old_label", "=", "JUMP_LABEL", "(", "jump_insn", ")", ";", "target", "=", "gen_rtx_LABEL_REF", "(", "Pmode", ",", "old_label", ")", ";", "mips16_load_branch_target", "(", "temp", ",", "target", ")", ";", "jump", "=", "emit_jump_insn", "(", "PMODE_INSN", "(", "gen_indirect_jump_and_restore", ",", "(", "temp", ",", "temp", ",", "saved_temp", ")", ")", ")", ";", "JUMP_LABEL", "(", "jump", ")", "=", "old_label", ";", "LABEL_NUSES", "(", "old_label", ")", "++", ";", "mips16_lay_out_constants", "(", "false", ")", ";", "if", "(", "simplejump_p", "(", "jump_insn", ")", ")", "new_label", "=", "NULL", ";", "else", "{", "new_label", "=", "gen_label_rtx", "(", ")", ";", "emit_label", "(", "new_label", ")", ";", "}", "jump_sequence", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "emit_insn_after", "(", "jump_sequence", ",", "jump_insn", ")", ";", "if", "(", "new_label", ")", "invert_jump", "(", "jump_insn", ",", "new_label", ",", "false", ")", ";", "else", "delete_insn", "(", "jump_insn", ")", ";", "something_changed", "=", "true", ";", "}", "}", "while", "(", "something_changed", ")", ";", "}", ""], "natrual_language": ["If", "we", "'re", "compiling", "a", "MIPS16", "function", ",", "look", "for", "and", "split", "any", "long", "branches", ".", "This", "must", "be", "called", "after", "all", "other", "instruction", "modifications", "in", "mips_reorg", "."], "TS_V_token": ["mips", "4", "2"], "File": "mips", "Func": "mips16_split_long_branches", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32834, "Length": 274} {"ground_truth": ["", "static", "rtx", "mips16_stub_call_address", "(", "mips_one_only_stub", "*", "stub", ")", "{", "rtx", "fn", "=", "mips16_stub_function", "(", "stub", "->", "get_name", "(", ")", ")", ";", "SYMBOL_REF_FLAGS", "(", "fn", ")", "|=", "SYMBOL_FLAG_LOCAL", ";", "if", "(", "!", "call_insn_operand", "(", "fn", ",", "VOIDmode", ")", ")", "fn", "=", "force_reg", "(", "Pmode", ",", "fn", ")", ";", "return", "fn", ";", "}", ""], "natrual_language": ["Return", "a", "legitimate", "call", "address", "for", "STUB", ",", "given", "that", "STUB", "is", "a", "MIPS16", "support", "function", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_stub_call_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32835, "Length": 51} {"ground_truth": ["", "static", "rtx", "mips16_stub_function", "(", "const", "char", "*", "name", ")", "{", "rtx", "x", ";", "x", "=", "gen_rtx_SYMBOL_REF", "(", "Pmode", ",", "ggc_strdup", "(", "name", ")", ")", ";", "SYMBOL_REF_FLAGS", "(", "x", ")", "|=", "(", "SYMBOL_FLAG_EXTERNAL", "|", "SYMBOL_FLAG_FUNCTION", ")", ";", "return", "x", ";", "}", ""], "natrual_language": ["Return", "a", "SYMBOL_REF", "for", "a", "MIPS16", "function", "called", "NAME", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips16_stub_function", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32836, "Length": 40} {"ground_truth": ["", "static", "bool", "mips16_stub_function_p", "(", "const_rtx", "x", ")", "{", "return", "(", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", "&&", "startswith", "(", "XSTR", "(", "x", ",", "0", ")", ",", "\"__mips16_\"", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "function", "X", "is", "a", "libgcc", "MIPS16", "stub", "function", "."], "TS_V_token": ["mips", "0", "\"__mips16_\""], "File": "mips", "Func": "mips16_stub_function_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32837, "Length": 31} {"ground_truth": ["", "static", "bool", "mips16_unextended_reference_p", "(", "machine_mode", "mode", ",", "rtx", "base", ",", "unsigned", "HOST_WIDE_INT", "offset", ")", "{", "if", "(", "mode", "!=", "BLKmode", "&&", "offset", "%", "GET_MODE_SIZE", "(", "mode", ")", "==", "0", ")", "{", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", "==", "4", "&&", "base", "==", "stack_pointer_rtx", ")", "return", "offset", "<", "256U", "*", "GET_MODE_SIZE", "(", "mode", ")", ";", "return", "offset", "<", "32U", "*", "GET_MODE_SIZE", "(", "mode", ")", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "value", "at", "OFFSET", "bytes", "from", "BASE", "can", "be", "accessed", "using", "an", "unextended", "mips16", "instruction", ".", "MODE", "is", "the", "mode", "of", "the", "value", ".", "Usually", "the", "offset", "in", "an", "unextended", "instruction", "is", "a", "5-bit", "field", ".", "The", "offset", "is", "unsigned", "and", "shifted", "left", "once", "for", "HIs", ",", "twice", "for", "SIs", ",", "and", "so", "on", ".", "An", "exception", "is", "SImode", "accesses", "off", "the", "stack", "pointer", ",", "which", "have", "an", "8-bit", "immediate", "field", "."], "TS_V_token": ["mips", "0", "4", "256U", "32U"], "File": "mips", "Func": "mips16_unextended_reference_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32838, "Length": 69} {"ground_truth": ["", "static", "void", "mips_74k_agen_init", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "!", "insn", "||", "CALL_P", "(", "insn", ")", "||", "JUMP_P", "(", "insn", ")", ")", "mips_last_74k_agen_insn", "=", "TYPE_UNKNOWN", ";", "else", "{", "enum", "attr_type", "type", "=", "get_attr_type", "(", "insn", ")", ";", "if", "(", "type", "==", "TYPE_LOAD", "||", "type", "==", "TYPE_STORE", ")", "mips_last_74k_agen_insn", "=", "type", ";", "}", "}", ""], "natrual_language": ["Initialize", "mips_last_74k_agen_insn", "from", "INSN", ".", "A", "null", "argument", "resets", "to", "TYPE_UNKNOWN", "state", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_74k_agen_init", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32839, "Length": 55} {"ground_truth": ["", "static", "void", "mips_74k_agen_reorder", "(", "rtx_insn", "*", "*", "ready", ",", "int", "nready", ")", "{", "int", "i", ";", "int", "store_pos", ",", "load_pos", ";", "store_pos", "=", "-", "1", ";", "load_pos", "=", "-", "1", ";", "for", "(", "i", "=", "nready", "-", "1", ";", "i", ">=", "0", ";", "i", "--", ")", "{", "rtx_insn", "*", "insn", "=", "ready", "[", "i", "]", ";", "if", "(", "USEFUL_INSN_P", "(", "insn", ")", ")", "switch", "(", "get_attr_type", "(", "insn", ")", ")", "{", "case", "TYPE_STORE", ":", "if", "(", "store_pos", "==", "-", "1", ")", "store_pos", "=", "i", ";", "break", ";", "case", "TYPE_LOAD", ":", "if", "(", "load_pos", "==", "-", "1", ")", "load_pos", "=", "i", ";", "break", ";", "default", ":", "break", ";", "}", "}", "if", "(", "load_pos", "==", "-", "1", "||", "store_pos", "==", "-", "1", ")", "return", ";", "switch", "(", "mips_last_74k_agen_insn", ")", "{", "case", "TYPE_UNKNOWN", ":", "case", "TYPE_LOAD", ":", "mips_maybe_swap_ready", "(", "ready", ",", "load_pos", ",", "store_pos", ",", "4", ")", ";", "break", ";", "case", "TYPE_STORE", ":", "mips_maybe_swap_ready", "(", "ready", ",", "store_pos", ",", "load_pos", ",", "4", ")", ";", "break", ";", "default", ":", "break", ";", "}", "}", ""], "natrual_language": ["A", "TUNE_74K", "helper", "function", ".", "The", "74K", "AGEN", "pipeline", "likes", "multiple", "loads", "to", "be", "grouped", "together", ",", "and", "multiple", "stores", "to", "be", "grouped", "together", ".", "Swap", "things", "around", "in", "the", "ready", "queue", "to", "make", "this", "happen", "."], "TS_V_token": ["mips", "1", "1", "1", "0", "1", "1", "1", "1", "4", "4"], "File": "mips", "Func": "mips_74k_agen_reorder", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32840, "Length": 169} {"ground_truth": ["", "bool", "mips_9bit_offset_address_p", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "struct", "mips_address_info", "addr", ";", "return", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", "&&", "addr", ".", "type", "==", "ADDRESS_REG", "&&", "CONST_INT_P", "(", "addr", ".", "offset", ")", "&&", "MIPS_9BIT_OFFSET_P", "(", "INTVAL", "(", "addr", ".", "offset", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "legitimate", "address", "with", "a", "9-bit", "offset", ".", "MODE", "is", "the", "mode", "of", "the", "value", "being", "accessed", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_9bit_offset_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32841, "Length": 53} {"ground_truth": ["", "static", "int", "mips_address_cost", "(", "rtx", "addr", ",", "machine_mode", "mode", ",", "addr_space_t", "as", "ATTRIBUTE_UNUSED", ",", "bool", "speed", "ATTRIBUTE_UNUSED", ")", "{", "return", "mips_address_insns", "(", "addr", ",", "mode", ",", "false", ")", ";", "}", ""], "natrual_language": ["Provide", "the", "costs", "of", "an", "addressing", "mode", "that", "contains", "ADDR", ".", "If", "ADDR", "is", "not", "a", "valid", "address", ",", "its", "cost", "is", "irrelevant", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_address_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32842, "Length": 30} {"ground_truth": ["", "int", "mips_address_insns", "(", "rtx", "x", ",", "machine_mode", "mode", ",", "bool", "might_split_p", ")", "{", "struct", "mips_address_info", "addr", ";", "int", "factor", ";", "bool", "msa_p", "=", "(", "!", "might_split_p", "&&", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", ";", "if", "(", "mode", "!=", "BLKmode", "&&", "might_split_p", ")", "factor", "=", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "else", "factor", "=", "1", ";", "if", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", ")", "switch", "(", "addr", ".", "type", ")", "{", "case", "ADDRESS_REG", ":", "if", "(", "msa_p", ")", "{", "if", "(", "mips_signed_immediate_p", "(", "INTVAL", "(", "addr", ".", "offset", ")", ",", "10", ",", "mips_ldst_scaled_shift", "(", "mode", ")", ")", ")", "return", "1", ";", "else", "return", "0", ";", "}", "if", "(", "TARGET_MIPS16", "&&", "!", "mips16_unextended_reference_p", "(", "mode", ",", "addr", ".", "reg", ",", "UINTVAL", "(", "addr", ".", "offset", ")", ")", ")", "return", "factor", "*", "2", ";", "return", "factor", ";", "case", "ADDRESS_LO_SUM", ":", "return", "msa_p", "?", "0", ":", "TARGET_MIPS16", "?", "factor", "*", "2", ":", "factor", ";", "case", "ADDRESS_CONST_INT", ":", "return", "msa_p", "?", "0", ":", "factor", ";", "case", "ADDRESS_SYMBOLIC", ":", "return", "msa_p", "?", "0", ":", "factor", "*", "mips_symbol_insns", "(", "addr", ".", "symbol_type", ",", "mode", ")", ";", "}", "return", "0", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "to", "load", "or", "store", "a", "value", "of", "mode", "MODE", "at", "X", ".", "Return", "0", "if", "X", "is", "n't", "valid", "for", "MODE", ".", "For", "mips16", "code", ",", "count", "extended", "instructions", "as", "two", "instructions", "."], "TS_V_token": ["mips", "1", "1", "10", "1", "0", "2", "0", "2", "0", "0", "0"], "File": "mips", "Func": "mips_address_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32843, "Length": 196} {"ground_truth": ["", "static", "void", "mips_add_cfa_restore", "(", "rtx", "reg", ")", "{", "mips_epilogue", ".", "cfa_restores", "=", "alloc_reg_note", "(", "REG_CFA_RESTORE", ",", "reg", ",", "mips_epilogue", ".", "cfa_restores", ")", ";", "}", ""], "natrual_language": ["Record", "that", "the", "epilogue", "has", "restored", "call-saved", "register", "REG", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_add_cfa_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32844, "Length": 24} {"ground_truth": ["", "static", "rtx", "mips_add_offset", "(", "rtx", "temp", ",", "rtx", "reg", ",", "HOST_WIDE_INT", "offset", ")", "{", "if", "(", "!", "SMALL_OPERAND", "(", "offset", ")", ")", "{", "rtx", "high", ";", "if", "(", "TARGET_MIPS16", ")", "{", "high", "=", "GEN_INT", "(", "offset", ")", ";", "offset", "=", "0", ";", "}", "else", "{", "high", "=", "gen_int_mode", "(", "CONST_HIGH_PART", "(", "offset", ")", ",", "Pmode", ")", ";", "offset", "=", "CONST_LOW_PART", "(", "offset", ")", ";", "}", "high", "=", "mips_force_temporary", "(", "temp", ",", "high", ")", ";", "reg", "=", "mips_force_temporary", "(", "temp", ",", "gen_rtx_PLUS", "(", "Pmode", ",", "high", ",", "reg", ")", ")", ";", "}", "return", "plus_constant", "(", "Pmode", ",", "reg", ",", "offset", ")", ";", "}", ""], "natrual_language": ["Return", "a", "legitimate", "address", "for", "REG", "+", "OFFSET", ".", "TEMP", "is", "as", "for", "mips_force_temporary", ";", "it", "is", "only", "needed", "when", "OFFSET", "is", "not", "a", "SMALL_OPERAND", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_add_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32845, "Length": 102} {"ground_truth": ["", "static", "void", "mips_adjust_block_mem", "(", "rtx", "mem", ",", "HOST_WIDE_INT", "length", ",", "rtx", "*", "loop_reg", ",", "rtx", "*", "loop_mem", ")", "{", "*", "loop_reg", "=", "copy_addr_to_reg", "(", "XEXP", "(", "mem", ",", "0", ")", ")", ";", "*", "loop_mem", "=", "change_address", "(", "mem", ",", "BLKmode", ",", "*", "loop_reg", ")", ";", "set_mem_align", "(", "*", "loop_mem", ",", "MIN", "(", "MEM_ALIGN", "(", "mem", ")", ",", "length", "*", "BITS_PER_UNIT", ")", ")", ";", "}", ""], "natrual_language": ["Helper", "function", "for", "doing", "a", "loop-based", "block", "operation", "on", "memory", "reference", "MEM", ".", "Each", "iteration", "of", "the", "loop", "will", "operate", "on", "LENGTH", "bytes", "of", "MEM", ".", "Create", "a", "new", "base", "register", "for", "use", "within", "the", "loop", "and", "point", "it", "to", "the", "start", "of", "MEM", ".", "Create", "a", "new", "memory", "reference", "that", "uses", "this", "register", ".", "Store", "them", "in", "*", "LOOP_REG", "and", "*", "LOOP_MEM", "respectively", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_adjust_block_mem", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32846, "Length": 64} {"ground_truth": ["", "static", "int", "mips_adjust_cost", "(", "rtx_insn", "*", ",", "int", "dep_type", ",", "rtx_insn", "*", ",", "int", "cost", ",", "unsigned", "int", ")", "{", "if", "(", "dep_type", "!=", "0", "&&", "(", "dep_type", "!=", "REG_DEP_OUTPUT", "||", "!", "TUNE_20KC", ")", ")", "return", "0", ";", "return", "cost", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCHED_ADJUST_COST", ".", "We", "assume", "that", "anti", "and", "output", "dependencies", "have", "no", "cost", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_adjust_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32847, "Length": 42} {"ground_truth": ["", "int", "mips_adjust_insn_length", "(", "rtx_insn", "*", "insn", ",", "int", "length", ")", "{", "if", "(", "length", "==", "MAX_PIC_BRANCH_LENGTH", "&&", "JUMP_P", "(", "insn", ")", "&&", "INSN_CODE", "(", "insn", ")", ">=", "0", "&&", "get_attr_type", "(", "insn", ")", "==", "TYPE_BRANCH", ")", "{", "length", "=", "simplejump_p", "(", "insn", ")", "?", "0", ":", "8", ";", "length", "+=", "BASE_INSN_LENGTH", "*", "mips_load_label_num_insns", "(", ")", ";", "length", "+=", "TARGET_COMPRESSION", "?", "2", ":", "4", ";", "}", "if", "(", "CALL_P", "(", "insn", ")", "||", "(", "TARGET_MIPS16", "?", "simplejump_p", "(", "insn", ")", ":", "JUMP_P", "(", "insn", ")", ")", ")", "length", "+=", "TARGET_MIPS16", "?", "2", ":", "4", ";", "if", "(", "!", "cfun", "->", "machine", "->", "ignore_hazard_length_p", "&&", "INSN_P", "(", "insn", ")", "&&", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "break", ";", "case", "HAZARD_DELAY", ":", "case", "HAZARD_FORBIDDEN_SLOT", ":", "length", "+=", "NOP_INSN_LENGTH", ";", "break", ";", "case", "HAZARD_HILO", ":", "length", "+=", "NOP_INSN_LENGTH", "*", "2", ";", "break", ";", "}", "return", "length", ";", "}", ""], "natrual_language": ["Return", "the", "length", "of", "INSN", ".", "LENGTH", "is", "the", "initial", "length", "computed", "by", "attributes", "in", "the", "machine-description", "file", "."], "TS_V_token": ["mips", "0", "0", "8", "2", "4", "2", "4", "0", "2"], "File": "mips", "Func": "mips_adjust_insn_length", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32848, "Length": 156} {"ground_truth": ["", "static", "void", "mips_annotate_pic_calls", "(", "void", ")", "{", "basic_block", "bb", ";", "rtx_insn", "*", "insn", ";", "FOR_EACH_BB_FN", "(", "bb", ",", "cfun", ")", "FOR_BB_INSNS", "(", "bb", ",", "insn", ")", "{", "rtx", "call", ",", "reg", ",", "symbol", ",", "second_call", ";", "second_call", "=", "0", ";", "call", "=", "mips_call_expr_from_insn", "(", "insn", ",", "&", "second_call", ")", ";", "if", "(", "!", "call", ")", "continue", ";", "gcc_assert", "(", "MEM_P", "(", "XEXP", "(", "call", ",", "0", ")", ")", ")", ";", "reg", "=", "XEXP", "(", "XEXP", "(", "call", ",", "0", ")", ",", "0", ")", ";", "if", "(", "!", "REG_P", "(", "reg", ")", ")", "continue", ";", "symbol", "=", "mips_find_pic_call_symbol", "(", "insn", ",", "reg", ",", "true", ")", ";", "if", "(", "symbol", ")", "{", "mips_annotate_pic_call_expr", "(", "call", ",", "symbol", ")", ";", "if", "(", "second_call", ")", "mips_annotate_pic_call_expr", "(", "second_call", ",", "symbol", ")", ";", "}", "}", "}", ""], "natrual_language": ["Use", "DF", "to", "annotate", "PIC", "indirect", "calls", "with", "the", "function", "symbol", "they", "dispatch", "to", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips", "Func": "mips_annotate_pic_calls", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32849, "Length": 131} {"ground_truth": ["", "static", "void", "mips_annotate_pic_call_expr", "(", "rtx", "call", ",", "rtx", "symbol", ")", "{", "rtx", "args_size", ";", "args_size", "=", "XEXP", "(", "call", ",", "1", ")", ";", "XEXP", "(", "call", ",", "1", ")", "=", "gen_rtx_UNSPEC", "(", "GET_MODE", "(", "args_size", ")", ",", "gen_rtvec", "(", "2", ",", "args_size", ",", "symbol", ")", ",", "UNSPEC_CALL_ATTR", ")", ";", "}", ""], "natrual_language": ["Replace", "the", "args_size", "operand", "of", "the", "call", "expression", "CALL", "with", "the", "call-attribute", "UNSPEC", "and", "fill", "in", "SYMBOL", "as", "the", "function", "symbol", "."], "TS_V_token": ["mips", "1", "1", "2"], "File": "mips", "Func": "mips_annotate_pic_call_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32850, "Length": 50} {"ground_truth": ["", "static", "int", "mips_arg_partial_bytes", "(", "cumulative_args_t", "cum", ",", "const", "function_arg_info", "&", "arg", ")", "{", "struct", "mips_arg_info", "info", ";", "mips_get_arg_info", "(", "&", "info", ",", "get_cumulative_args", "(", "cum", ")", ",", "arg", ".", "mode", ",", "arg", ".", "type", ",", "arg", ".", "named", ")", ";", "return", "info", ".", "stack_words", ">", "0", "?", "info", ".", "reg_words", "*", "UNITS_PER_WORD", ":", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ARG_PARTIAL_BYTES", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_arg_partial_bytes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32851, "Length": 56} {"ground_truth": ["", "static", "unsigned", "int", "mips_arg_regno", "(", "const", "struct", "mips_arg_info", "*", "info", ",", "bool", "hard_float_p", ")", "{", "if", "(", "!", "info", "->", "fpr_p", "||", "!", "hard_float_p", ")", "return", "GP_ARG_FIRST", "+", "info", "->", "reg_offset", ";", "else", "if", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_DOUBLE_FLOAT", "&&", "info", "->", "reg_offset", ">", "0", ")", "return", "FP_ARG_FIRST", "+", "2", ";", "else", "return", "FP_ARG_FIRST", "+", "info", "->", "reg_offset", ";", "}", ""], "natrual_language": ["INFO", "describes", "a", "register", "argument", "that", "has", "the", "normal", "format", "for", "the", "argument", "'s", "mode", ".", "Return", "the", "register", "it", "uses", ",", "assuming", "that", "FPRs", "are", "available", "if", "HARD_FLOAT_P", "."], "TS_V_token": ["mips", "0", "2"], "File": "mips", "Func": "mips_arg_regno", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32852, "Length": 61} {"ground_truth": ["", "static", "unsigned", "HOST_WIDE_INT", "mips_asan_shadow_offset", "(", "void", ")", "{", "return", "SUBTARGET_SHADOW_OFFSET", ";", "}", ""], "natrual_language": ["Implement", "the", "TARGET_ASAN_SHADOW_OFFSET", "hook", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_asan_shadow_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32853, "Length": 12} {"ground_truth": ["", "static", "void", "mips_asm_file_end", "(", "void", ")", "{", "if", "(", "NEED_INDICATE_EXEC_STACK", ")", "file_end_indicate_exec_stack", "(", ")", ";", "}", ""], "natrual_language": ["If", "we", "are", "optimizing", "the", "global", "pointer", ",", "emit", "the", "text", "section", "now", "and", "any", "small", "externs", "which", "did", "not", "have", ".comm", ",", "etc", "that", "are", "needed", ".", "Also", ",", "give", "a", "warning", "if", "the", "data", "area", "is", "more", "than", "32K", "and", "-pic", "because", "3", "instructions", "are", "needed", "to", "reference", "the", "data", "pointers", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_asm_file_end", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32854, "Length": 16} {"ground_truth": ["", "static", "void", "mips_atomic_assign_expand_fenv", "(", "tree", "*", "hold", ",", "tree", "*", "clear", ",", "tree", "*", "update", ")", "{", "if", "(", "!", "TARGET_HARD_FLOAT_ABI", ")", "return", ";", "tree", "exceptions_var", "=", "create_tmp_var_raw", "(", "MIPS_ATYPE_USI", ")", ";", "tree", "fcsr_orig_var", "=", "create_tmp_var_raw", "(", "MIPS_ATYPE_USI", ")", ";", "tree", "fcsr_mod_var", "=", "create_tmp_var_raw", "(", "MIPS_ATYPE_USI", ")", ";", "tree", "get_fcsr", "=", "mips_builtin_decls", "[", "MIPS_GET_FCSR", "]", ";", "tree", "set_fcsr", "=", "mips_builtin_decls", "[", "MIPS_SET_FCSR", "]", ";", "tree", "get_fcsr_hold_call", "=", "build_call_expr", "(", "get_fcsr", ",", "0", ")", ";", "tree", "hold_assign_orig", "=", "build4", "(", "TARGET_EXPR", ",", "MIPS_ATYPE_USI", ",", "fcsr_orig_var", ",", "get_fcsr_hold_call", ",", "NULL", ",", "NULL", ")", ";", "tree", "hold_mod_val", "=", "build2", "(", "BIT_AND_EXPR", ",", "MIPS_ATYPE_USI", ",", "fcsr_orig_var", ",", "build_int_cst", "(", "MIPS_ATYPE_USI", ",", "0xfffff003", ")", ")", ";", "tree", "hold_assign_mod", "=", "build4", "(", "TARGET_EXPR", ",", "MIPS_ATYPE_USI", ",", "fcsr_mod_var", ",", "hold_mod_val", ",", "NULL", ",", "NULL", ")", ";", "tree", "set_fcsr_hold_call", "=", "build_call_expr", "(", "set_fcsr", ",", "1", ",", "fcsr_mod_var", ")", ";", "tree", "hold_all", "=", "build2", "(", "COMPOUND_EXPR", ",", "MIPS_ATYPE_USI", ",", "hold_assign_orig", ",", "hold_assign_mod", ")", ";", "*", "hold", "=", "build2", "(", "COMPOUND_EXPR", ",", "void_type_node", ",", "hold_all", ",", "set_fcsr_hold_call", ")", ";", "*", "clear", "=", "build_call_expr", "(", "set_fcsr", ",", "1", ",", "fcsr_mod_var", ")", ";", "tree", "get_fcsr_update_call", "=", "build_call_expr", "(", "get_fcsr", ",", "0", ")", ";", "*", "update", "=", "build4", "(", "TARGET_EXPR", ",", "MIPS_ATYPE_USI", ",", "exceptions_var", ",", "get_fcsr_update_call", ",", "NULL", ",", "NULL", ")", ";", "tree", "set_fcsr_update_call", "=", "build_call_expr", "(", "set_fcsr", ",", "1", ",", "fcsr_orig_var", ")", ";", "*", "update", "=", "build2", "(", "COMPOUND_EXPR", ",", "void_type_node", ",", "*", "update", ",", "set_fcsr_update_call", ")", ";", "tree", "atomic_feraiseexcept", "=", "builtin_decl_implicit", "(", "BUILT_IN_ATOMIC_FERAISEEXCEPT", ")", ";", "tree", "int_exceptions_var", "=", "fold_convert", "(", "integer_type_node", ",", "exceptions_var", ")", ";", "tree", "atomic_feraiseexcept_call", "=", "build_call_expr", "(", "atomic_feraiseexcept", ",", "1", ",", "int_exceptions_var", ")", ";", "*", "update", "=", "build2", "(", "COMPOUND_EXPR", ",", "void_type_node", ",", "*", "update", ",", "atomic_feraiseexcept_call", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ATOMIC_ASSIGN_EXPAND_FENV", "."], "TS_V_token": ["mips", "0", "0xfffff003", "1", "1", "0", "1", "1"], "File": "mips", "Func": "mips_atomic_assign_expand_fenv", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32855, "Length": 282} {"ground_truth": ["", "static", "unsigned", "int", "mips_autovectorize_vector_modes", "(", "vector_modes", "*", "modes", ",", "bool", ")", "{", "if", "(", "ISA_HAS_MSA", ")", "modes", "->", "safe_push", "(", "V16QImode", ")", ";", "return", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_MODES", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_autovectorize_vector_modes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32856, "Length": 27} {"ground_truth": ["", "static", "void", "mips_avoid_hazard", "(", "rtx_insn", "*", "after", ",", "rtx_insn", "*", "insn", ",", "int", "*", "hilo_delay", ",", "rtx", "*", "delayed_reg", ",", "rtx", "lo_reg", ",", "bool", "*", "fs_delay", ")", "{", "rtx", "pattern", ",", "set", ";", "int", "nops", ",", "ninsns", ";", "pattern", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "pattern", ")", "==", "ASM_INPUT", "||", "asm_noperands", "(", "pattern", ")", ">=", "0", ")", "cfun", "->", "machine", "->", "all_noreorder_p", "=", "false", ";", "ninsns", "=", "get_attr_length", "(", "insn", ")", "/", "4", ";", "if", "(", "ninsns", "==", "0", ")", "return", ";", "if", "(", "*", "hilo_delay", "<", "2", "&&", "reg_set_p", "(", "lo_reg", ",", "pattern", ")", ")", "nops", "=", "2", "-", "*", "hilo_delay", ";", "else", "if", "(", "*", "delayed_reg", "!=", "0", "&&", "reg_referenced_p", "(", "*", "delayed_reg", ",", "pattern", ")", ")", "nops", "=", "1", ";", "else", "if", "(", "*", "fs_delay", "&&", "get_attr_can_delay", "(", "insn", ")", "==", "CAN_DELAY_NO", "&&", "GET_CODE", "(", "PATTERN", "(", "after", ")", ")", "!=", "SEQUENCE", "&&", "GET_CODE", "(", "pattern", ")", "!=", "ASM_INPUT", "&&", "asm_noperands", "(", "pattern", ")", "<", "0", ")", "nops", "=", "1", ";", "else", "if", "(", "TUNE_P6600", "&&", "TARGET_CB_MAYBE", "&&", "!", "optimize_size", "&&", "(", "(", "mips_classify_branch_p6600", "(", "after", ")", "==", "UC_BALC", "&&", "mips_classify_branch_p6600", "(", "insn", ")", "==", "UC_OTHER", ")", "||", "(", "mips_classify_branch_p6600", "(", "insn", ")", "==", "UC_BALC", "&&", "mips_classify_branch_p6600", "(", "after", ")", "==", "UC_OTHER", ")", ")", ")", "nops", "=", "1", ";", "else", "nops", "=", "0", ";", "*", "hilo_delay", "+=", "nops", ";", "rtx_insn", "*", "real_after", "=", "after", ";", "if", "(", "real_after", "&&", "nops", "&&", "CALL_P", "(", "real_after", ")", ")", "while", "(", "real_after", "&&", "(", "NOTE_P", "(", "NEXT_INSN", "(", "real_after", ")", ")", "||", "BARRIER_P", "(", "NEXT_INSN", "(", "real_after", ")", ")", ")", ")", "real_after", "=", "NEXT_INSN", "(", "real_after", ")", ";", "while", "(", "nops", "--", ">", "0", ")", "emit_insn_after", "(", "gen_hazard_nop", "(", ")", ",", "real_after", ")", ";", "*", "hilo_delay", "+=", "ninsns", ";", "*", "delayed_reg", "=", "0", ";", "*", "fs_delay", "=", "false", ";", "if", "(", "INSN_CODE", "(", "insn", ")", ">=", "0", ")", "switch", "(", "get_attr_hazard", "(", "insn", ")", ")", "{", "case", "HAZARD_NONE", ":", "if", "(", "TUNE_P6600", "&&", "!", "optimize_size", "&&", "TARGET_CB_MAYBE", "&&", "mips_classify_branch_p6600", "(", "insn", ")", "==", "UC_OTHER", ")", "*", "fs_delay", "=", "true", ";", "break", ";", "case", "HAZARD_FORBIDDEN_SLOT", ":", "if", "(", "TARGET_CB_MAYBE", ")", "*", "fs_delay", "=", "true", ";", "break", ";", "case", "HAZARD_HILO", ":", "*", "hilo_delay", "=", "0", ";", "break", ";", "case", "HAZARD_DELAY", ":", "set", "=", "single_set", "(", "insn", ")", ";", "gcc_assert", "(", "set", ")", ";", "*", "delayed_reg", "=", "SET_DEST", "(", "set", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Subroutine", "of", "mips_reorg", ".", "If", "there", "is", "a", "hazard", "between", "INSN", "and", "a", "previous", "instruction", ",", "avoid", "it", "by", "inserting", "nops", "after", "instruction", "AFTER", ".", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "describe", "the", "hazards", "that", "apply", "at", "this", "point", ".", "If", "*", "DELAYED_REG", "is", "non-null", ",", "INSN", "must", "wait", "a", "cycle", "before", "using", "the", "value", "of", "that", "register", ".", "*", "HILO_DELAY", "counts", "the", "number", "of", "instructions", "since", "the", "last", "hilo", "hazard", "(", "that", "is", ",", "the", "number", "of", "instructions", "since", "the", "last", "mflo", "or", "mfhi", ")", ".", "After", "inserting", "nops", "for", "INSN", ",", "update", "*", "DELAYED_REG", "and", "*", "HILO_DELAY", "for", "the", "next", "instruction", ".", "LO_REG", "is", "an", "rtx", "for", "the", "LO", "register", ",", "used", "in", "dependence", "checking", "."], "TS_V_token": ["mips", "0", "4", "0", "2", "2", "0", "1", "0", "1", "1", "0", "0", "0", "0", "0"], "File": "mips", "Func": "mips_avoid_hazard", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32857, "Length": 397} {"ground_truth": ["", "static", "int", "mips_binary_cost", "(", "rtx", "x", ",", "int", "single_cost", ",", "int", "double_cost", ",", "bool", "speed", ")", "{", "int", "cost", ";", "if", "(", "GET_MODE_SIZE", "(", "GET_MODE", "(", "x", ")", ")", "==", "UNITS_PER_WORD", "*", "2", ")", "cost", "=", "double_cost", ";", "else", "cost", "=", "single_cost", ";", "return", "(", "cost", "+", "set_src_cost", "(", "XEXP", "(", "x", ",", "0", ")", ",", "GET_MODE", "(", "x", ")", ",", "speed", ")", "+", "rtx_cost", "(", "XEXP", "(", "x", ",", "1", ")", ",", "GET_MODE", "(", "x", ")", ",", "GET_CODE", "(", "x", ")", ",", "1", ",", "speed", ")", ")", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "binary", "operation", "X", ",", "given", "that", "the", "instruction", "sequence", "for", "a", "word-sized", "or", "smaller", "operation", "has", "cost", "SINGLE_COST", "and", "that", "the", "sequence", "of", "a", "double-word", "operation", "has", "cost", "DOUBLE_COST", ".", "If", "SPEED", "is", "true", ",", "optimize", "for", "speed", "otherwise", "optimize", "for", "size", "."], "TS_V_token": ["mips", "2", "0", "1", "1"], "File": "mips", "Func": "mips_binary_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32858, "Length": 90} {"ground_truth": ["", "static", "void", "mips_block_move_loop", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ",", "HOST_WIDE_INT", "bytes_per_iter", ")", "{", "rtx_code_label", "*", "label", ";", "rtx", "src_reg", ",", "dest_reg", ",", "final_src", ",", "test", ";", "HOST_WIDE_INT", "leftover", ";", "leftover", "=", "length", "%", "bytes_per_iter", ";", "length", "-=", "leftover", ";", "mips_adjust_block_mem", "(", "src", ",", "bytes_per_iter", ",", "&", "src_reg", ",", "&", "src", ")", ";", "mips_adjust_block_mem", "(", "dest", ",", "bytes_per_iter", ",", "&", "dest_reg", ",", "&", "dest", ")", ";", "final_src", "=", "expand_simple_binop", "(", "Pmode", ",", "PLUS", ",", "src_reg", ",", "GEN_INT", "(", "length", ")", ",", "0", ",", "0", ",", "OPTAB_WIDEN", ")", ";", "label", "=", "gen_label_rtx", "(", ")", ";", "emit_label", "(", "label", ")", ";", "mips_block_move_straight", "(", "dest", ",", "src", ",", "bytes_per_iter", ")", ";", "mips_emit_move", "(", "src_reg", ",", "plus_constant", "(", "Pmode", ",", "src_reg", ",", "bytes_per_iter", ")", ")", ";", "mips_emit_move", "(", "dest_reg", ",", "plus_constant", "(", "Pmode", ",", "dest_reg", ",", "bytes_per_iter", ")", ")", ";", "test", "=", "gen_rtx_NE", "(", "VOIDmode", ",", "src_reg", ",", "final_src", ")", ";", "if", "(", "Pmode", "==", "DImode", ")", "emit_jump_insn", "(", "gen_cbranchdi4", "(", "test", ",", "src_reg", ",", "final_src", ",", "label", ")", ")", ";", "else", "emit_jump_insn", "(", "gen_cbranchsi4", "(", "test", ",", "src_reg", ",", "final_src", ",", "label", ")", ")", ";", "if", "(", "leftover", ")", "mips_block_move_straight", "(", "dest", ",", "src", ",", "leftover", ")", ";", "else", "emit_insn", "(", "gen_nop", "(", ")", ")", ";", "}", ""], "natrual_language": ["Move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", "using", "a", "loop", "that", "moves", "MAX_MOVE_BYTES", "per", "iteration", ".", "LENGTH", "must", "be", "at", "least", "MAX_MOVE_BYTES", ".", "Assume", "that", "the", "memory", "regions", "do", "not", "overlap", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_block_move_loop", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32859, "Length": 207} {"ground_truth": ["", "static", "void", "mips_block_move_straight", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "length", ")", "{", "HOST_WIDE_INT", "offset", ",", "delta", ";", "unsigned", "HOST_WIDE_INT", "bits", ";", "int", "i", ";", "machine_mode", "mode", ";", "rtx", "*", "regs", ";", "if", "(", "!", "ISA_HAS_LWL_LWR", ")", "bits", "=", "MIN", "(", "BITS_PER_WORD", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ")", ";", "else", "{", "if", "(", "MEM_ALIGN", "(", "src", ")", "==", "BITS_PER_WORD", "/", "2", "&&", "MEM_ALIGN", "(", "dest", ")", "==", "BITS_PER_WORD", "/", "2", ")", "bits", "=", "BITS_PER_WORD", "/", "2", ";", "else", "bits", "=", "BITS_PER_WORD", ";", "}", "mode", "=", "int_mode_for_size", "(", "bits", ",", "0", ")", ".", "require", "(", ")", ";", "delta", "=", "bits", "/", "BITS_PER_UNIT", ";", "regs", "=", "XALLOCAVEC", "(", "rtx", ",", "length", "/", "delta", ")", ";", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "{", "regs", "[", "i", "]", "=", "gen_reg_rtx", "(", "mode", ")", ";", "if", "(", "MEM_ALIGN", "(", "src", ")", ">=", "bits", ")", "mips_emit_move", "(", "regs", "[", "i", "]", ",", "adjust_address", "(", "src", ",", "mode", ",", "offset", ")", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ext_as_unaligned_load", "(", "regs", "[", "i", "]", ",", "part", ",", "bits", ",", "0", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "}", "for", "(", "offset", "=", "0", ",", "i", "=", "0", ";", "offset", "+", "delta", "<=", "length", ";", "offset", "+=", "delta", ",", "i", "++", ")", "if", "(", "MEM_ALIGN", "(", "dest", ")", ">=", "bits", ")", "mips_emit_move", "(", "adjust_address", "(", "dest", ",", "mode", ",", "offset", ")", ",", "regs", "[", "i", "]", ")", ";", "else", "{", "rtx", "part", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "set_mem_size", "(", "part", ",", "delta", ")", ";", "if", "(", "!", "mips_expand_ins_as_unaligned_store", "(", "part", ",", "regs", "[", "i", "]", ",", "bits", ",", "0", ")", ")", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "offset", "<", "length", ")", "{", "src", "=", "adjust_address", "(", "src", ",", "BLKmode", ",", "offset", ")", ";", "dest", "=", "adjust_address", "(", "dest", ",", "BLKmode", ",", "offset", ")", ";", "move_by_pieces", "(", "dest", ",", "src", ",", "length", "-", "offset", ",", "MIN", "(", "MEM_ALIGN", "(", "src", ")", ",", "MEM_ALIGN", "(", "dest", ")", ")", ",", "RETURN_BEGIN", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "straight-line", "code", "to", "move", "LENGTH", "bytes", "from", "SRC", "to", "DEST", ".", "Assume", "that", "the", "areas", "do", "not", "overlap", "."], "TS_V_token": ["mips", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips", "Func": "mips_block_move_straight", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32860, "Length": 377} {"ground_truth": ["", "static", "bool", "mips_breakable_sequence_p", "(", "rtx_insn", "*", "insn", ")", "{", "return", "(", "insn", "&&", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "SEQUENCE", "&&", "TARGET_CB_MAYBE", "&&", "get_attr_compact_form", "(", "SEQ_BEGIN", "(", "insn", ")", ")", "!=", "COMPACT_FORM_NEVER", ")", ";", "}", ""], "natrual_language": ["A", "SEQUENCE", "is", "breakable", "iff", "the", "branch", "inside", "it", "has", "a", "compact", "form", "and", "the", "target", "has", "compact", "branches", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_breakable_sequence_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32861, "Length": 37} {"ground_truth": ["", "static", "rtx_insn", "*", "mips_break_sequence", "(", "rtx_insn", "*", "insn", ")", "{", "rtx_insn", "*", "before", "=", "PREV_INSN", "(", "insn", ")", ";", "rtx_insn", "*", "branch", "=", "SEQ_BEGIN", "(", "insn", ")", ";", "rtx_insn", "*", "ds", "=", "SEQ_END", "(", "insn", ")", ";", "remove_insn", "(", "insn", ")", ";", "add_insn_after", "(", "ds", ",", "before", ",", "NULL", ")", ";", "add_insn_after", "(", "branch", ",", "ds", ",", "NULL", ")", ";", "return", "ds", ";", "}", ""], "natrual_language": ["Remove", "a", "SEQUENCE", "and", "replace", "it", "with", "the", "delay", "slot", "instruction", "followed", "by", "the", "branch", "and", "return", "the", "instruction", "in", "the", "delay", "slot", ".", "Return", "the", "first", "of", "the", "two", "new", "instructions", ".", "Subroutine", "of", "mips_reorg_process_insns", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_break_sequence", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32862, "Length": 64} {"ground_truth": ["", "static", "tree", "mips_build_builtin_va_list", "(", "void", ")", "{", "if", "(", "EABI_FLOAT_VARARGS_P", ")", "{", "tree", "f_ovfl", ",", "f_gtop", ",", "f_ftop", ",", "f_goff", ",", "f_foff", ",", "f_res", ",", "record", ";", "tree", "array", ",", "index", ";", "record", "=", "lang_hooks", ".", "types", ".", "make_type", "(", "RECORD_TYPE", ")", ";", "f_ovfl", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FIELD_DECL", ",", "get_identifier", "(", "\"__overflow_argptr\"", ")", ",", "ptr_type_node", ")", ";", "f_gtop", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FIELD_DECL", ",", "get_identifier", "(", "\"__gpr_top\"", ")", ",", "ptr_type_node", ")", ";", "f_ftop", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FIELD_DECL", ",", "get_identifier", "(", "\"__fpr_top\"", ")", ",", "ptr_type_node", ")", ";", "f_goff", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FIELD_DECL", ",", "get_identifier", "(", "\"__gpr_offset\"", ")", ",", "unsigned_char_type_node", ")", ";", "f_foff", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FIELD_DECL", ",", "get_identifier", "(", "\"__fpr_offset\"", ")", ",", "unsigned_char_type_node", ")", ";", "index", "=", "build_int_cst", "(", "NULL_TREE", ",", "GET_MODE_SIZE", "(", "ptr_mode", ")", "-", "2", "-", "1", ")", ";", "array", "=", "build_array_type", "(", "unsigned_char_type_node", ",", "build_index_type", "(", "index", ")", ")", ";", "f_res", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FIELD_DECL", ",", "get_identifier", "(", "\"__reserved\"", ")", ",", "array", ")", ";", "DECL_FIELD_CONTEXT", "(", "f_ovfl", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_gtop", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_ftop", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_goff", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_foff", ")", "=", "record", ";", "DECL_FIELD_CONTEXT", "(", "f_res", ")", "=", "record", ";", "TYPE_FIELDS", "(", "record", ")", "=", "f_ovfl", ";", "DECL_CHAIN", "(", "f_ovfl", ")", "=", "f_gtop", ";", "DECL_CHAIN", "(", "f_gtop", ")", "=", "f_ftop", ";", "DECL_CHAIN", "(", "f_ftop", ")", "=", "f_goff", ";", "DECL_CHAIN", "(", "f_goff", ")", "=", "f_foff", ";", "DECL_CHAIN", "(", "f_foff", ")", "=", "f_res", ";", "layout_type", "(", "record", ")", ";", "return", "record", ";", "}", "else", "return", "ptr_type_node", ";", "}", ""], "natrual_language": ["Create", "the", "va_list", "data", "type", ".", "We", "keep", "3", "pointers", ",", "and", "two", "offsets", ".", "Two", "pointers", "are", "to", "the", "overflow", "area", ",", "which", "starts", "at", "the", "CFA", ".", "One", "of", "these", "is", "constant", ",", "for", "addressing", "into", "the", "GPR", "save", "area", "below", "it", ".", "The", "other", "is", "advanced", "up", "the", "stack", "through", "the", "overflow", "region", ".", "The", "third", "pointer", "is", "to", "the", "GPR", "save", "area", ".", "Since", "the", "FPR", "save", "area", "is", "just", "below", "it", ",", "we", "can", "address", "FPR", "slots", "off", "this", "pointer", ".", "We", "also", "keep", "two", "one-byte", "offsets", ",", "which", "are", "to", "be", "subtracted", "from", "the", "constant", "pointers", "to", "yield", "addresses", "in", "the", "GPR", "and", "FPR", "save", "areas", ".", "These", "are", "downcounted", "as", "float", "or", "non-float", "arguments", "are", "used", ",", "and", "when", "they", "get", "to", "zero", ",", "the", "argument", "must", "be", "obtained", "from", "the", "overflow", "region", ".", "If", "!", "EABI_FLOAT_VARARGS_P", ",", "then", "no", "FPR", "save", "area", "exists", ",", "and", "a", "single", "pointer", "is", "enough", ".", "It", "'s", "started", "at", "the", "GPR", "save", "area", ",", "and", "is", "advanced", ",", "period", ".", "Note", "that", "the", "GPR", "save", "area", "is", "not", "constant", "size", ",", "due", "to", "optimization", "in", "the", "prologue", ".", "Hence", ",", "we", "ca", "n't", "use", "a", "design", "with", "two", "pointers", "and", "two", "offsets", ",", "although", "we", "could", "have", "designed", "this", "with", "two", "pointers", "and", "three", "offsets", "."], "TS_V_token": ["mips", "\"__overflow_argptr\"", "\"__gpr_top\"", "\"__fpr_top\"", "\"__gpr_offset\"", "\"__fpr_offset\"", "2", "1", "\"__reserved\""], "File": "mips", "Func": "mips_build_builtin_va_list", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32863, "Length": 265} {"ground_truth": ["", "static", "tree", "mips_build_cvpointer_type", "(", "void", ")", "{", "static", "tree", "cache", ";", "if", "(", "cache", "==", "NULL_TREE", ")", "cache", "=", "build_pointer_type", "(", "build_qualified_type", "(", "void_type_node", ",", "TYPE_QUAL_CONST", "|", "TYPE_QUAL_VOLATILE", ")", ")", ";", "return", "cache", ";", "}", ""], "natrual_language": ["Return", "a", "type", "for", "'const", "volatile", "void", "*", "'", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_build_cvpointer_type", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32864, "Length": 35} {"ground_truth": ["", "static", "unsigned", "int", "mips_build_integer", "(", "struct", "mips_integer_op", "*", "codes", ",", "unsigned", "HOST_WIDE_INT", "value", ")", "{", "if", "(", "SMALL_OPERAND", "(", "value", ")", "||", "SMALL_OPERAND_UNSIGNED", "(", "value", ")", "||", "LUI_OPERAND", "(", "value", ")", ")", "{", "codes", "[", "0", "]", ".", "code", "=", "UNKNOWN", ";", "codes", "[", "0", "]", ".", "value", "=", "value", ";", "return", "1", ";", "}", "else", "if", "(", "(", "value", "&", "1", ")", "!=", "0", "||", "LUI_OPERAND", "(", "CONST_HIGH_PART", "(", "value", ")", ")", ")", "{", "return", "mips_build_lower", "(", "codes", ",", "value", ")", ";", "}", "else", "if", "(", "(", "value", "&", "0xffff", ")", "==", "0", ")", "{", "return", "mips_build_shift", "(", "codes", ",", "value", ")", ";", "}", "else", "{", "struct", "mips_integer_op", "alt_codes", "[", "MIPS_MAX_INTEGER_OPS", "]", ";", "unsigned", "int", "cost", ",", "alt_cost", ";", "cost", "=", "mips_build_shift", "(", "codes", ",", "value", ")", ";", "alt_cost", "=", "mips_build_lower", "(", "alt_codes", ",", "value", ")", ";", "if", "(", "alt_cost", "<", "cost", ")", "{", "memcpy", "(", "codes", ",", "alt_codes", ",", "alt_cost", "*", "sizeof", "(", "codes", "[", "0", "]", ")", ")", ";", "cost", "=", "alt_cost", ";", "}", "return", "cost", ";", "}", "}", ""], "natrual_language": ["Fill", "CODES", "with", "a", "sequence", "of", "rtl", "operations", "to", "load", "VALUE", ".", "Return", "the", "number", "of", "operations", "needed", "."], "TS_V_token": ["mips", "0", "0", "1", "1", "0", "0xffff", "0", "0"], "File": "mips", "Func": "mips_build_integer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32865, "Length": 172} {"ground_truth": ["", "static", "unsigned", "int", "mips_build_lower", "(", "struct", "mips_integer_op", "*", "codes", ",", "unsigned", "HOST_WIDE_INT", "value", ")", "{", "unsigned", "HOST_WIDE_INT", "high", ";", "unsigned", "int", "i", ";", "high", "=", "value", "&", "~", "(", "unsigned", "HOST_WIDE_INT", ")", "0xffff", ";", "if", "(", "!", "LUI_OPERAND", "(", "high", ")", "&&", "(", "value", "&", "0x18000", ")", "==", "0x18000", ")", "{", "i", "=", "mips_build_integer", "(", "codes", ",", "CONST_HIGH_PART", "(", "value", ")", ")", ";", "codes", "[", "i", "]", ".", "code", "=", "PLUS", ";", "codes", "[", "i", "]", ".", "value", "=", "CONST_LOW_PART", "(", "value", ")", ";", "}", "else", "{", "i", "=", "mips_build_integer", "(", "codes", ",", "high", ")", ";", "codes", "[", "i", "]", ".", "code", "=", "IOR", ";", "codes", "[", "i", "]", ".", "value", "=", "value", "&", "0xffff", ";", "}", "return", "i", "+", "1", ";", "}", ""], "natrual_language": ["As", "for", "mips_build_shift", ",", "but", "assume", "that", "the", "final", "action", "will", "be", "an", "IOR", "or", "PLUS", "operation", "."], "TS_V_token": ["mips", "0xffff", "0x18000", "0x18000", "0xffff", "1"], "File": "mips", "Func": "mips_build_lower", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32866, "Length": 123} {"ground_truth": ["", "static", "unsigned", "int", "mips_build_shift", "(", "struct", "mips_integer_op", "*", "codes", ",", "HOST_WIDE_INT", "value", ")", "{", "unsigned", "int", "i", ",", "shift", ";", "shift", "=", "0", ";", "while", "(", "(", "value", "&", "1", ")", "==", "0", ")", "value", "/=", "2", ",", "shift", "++", ";", "i", "=", "mips_build_integer", "(", "codes", ",", "value", ")", ";", "codes", "[", "i", "]", ".", "code", "=", "ASHIFT", ";", "codes", "[", "i", "]", ".", "value", "=", "shift", ";", "return", "i", "+", "1", ";", "}", ""], "natrual_language": ["Subroutine", "of", "mips_build_integer", "(", "with", "the", "same", "interface", ")", ".", "Assume", "that", "the", "final", "action", "in", "the", "sequence", "should", "be", "a", "left", "shift", "."], "TS_V_token": ["mips", "0", "1", "0", "2", "1"], "File": "mips", "Func": "mips_build_shift", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32867, "Length": 74} {"ground_truth": ["", "static", "rtx", "mips_builtin_branch_and_move", "(", "rtx", "condition", ",", "rtx", "target", ",", "rtx", "value_if_true", ",", "rtx", "value_if_false", ")", "{", "rtx_code_label", "*", "true_label", ",", "*", "done_label", ";", "true_label", "=", "gen_label_rtx", "(", ")", ";", "done_label", "=", "gen_label_rtx", "(", ")", ";", "mips_emit_move", "(", "target", ",", "value_if_false", ")", ";", "emit_jump_insn", "(", "gen_condjump", "(", "condition", ",", "true_label", ")", ")", ";", "emit_jump_insn", "(", "gen_jump", "(", "done_label", ")", ")", ";", "emit_barrier", "(", ")", ";", "emit_label", "(", "true_label", ")", ";", "mips_emit_move", "(", "target", ",", "value_if_true", ")", ";", "emit_label", "(", "done_label", ")", ";", "return", "target", ";", "}", ""], "natrual_language": ["Move", "VALUE_IF_TRUE", "into", "TARGET", "if", "CONDITION", "is", "true", ";", "move", "VALUE_IF_FALSE", "into", "TARGET", "otherwise", ".", "Return", "TARGET", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_builtin_branch_and_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32868, "Length": 86} {"ground_truth": ["", "static", "tree", "mips_builtin_decl", "(", "unsigned", "int", "code", ",", "bool", "initialize_p", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "code", ">=", "ARRAY_SIZE", "(", "mips_builtins", ")", ")", "return", "error_mark_node", ";", "return", "mips_builtin_decls", "[", "code", "]", ";", "}", ""], "natrual_language": ["Implement", "TARGET_BUILTIN_DECL", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_builtin_decl", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32869, "Length": 32} {"ground_truth": ["", "static", "tree", "mips_builtin_vectorized_function", "(", "unsigned", "int", "fn", ",", "tree", "type_out", ",", "tree", "type_in", ")", "{", "machine_mode", "in_mode", ",", "out_mode", ";", "int", "in_n", ",", "out_n", ";", "if", "(", "TREE_CODE", "(", "type_out", ")", "!=", "VECTOR_TYPE", "||", "TREE_CODE", "(", "type_in", ")", "!=", "VECTOR_TYPE", "||", "!", "ISA_HAS_MSA", ")", "return", "NULL_TREE", ";", "out_mode", "=", "TYPE_MODE", "(", "TREE_TYPE", "(", "type_out", ")", ")", ";", "out_n", "=", "TYPE_VECTOR_SUBPARTS", "(", "type_out", ")", ";", "in_mode", "=", "TYPE_MODE", "(", "TREE_TYPE", "(", "type_in", ")", ")", ";", "in_n", "=", "TYPE_VECTOR_SUBPARTS", "(", "type_in", ")", ";", "mips_builtin_decls", "[", "mips_get_builtin_decl_index", "[", "CODE_FOR_", "##", "INSN", "]", "]", "switch", "(", "fn", ")", "{", "case", "BUILT_IN_SQRT", ":", "if", "(", "out_mode", "==", "DFmode", "&&", "out_n", "==", "2", "&&", "in_mode", "==", "DFmode", "&&", "in_n", "==", "2", ")", "return", "MIPS_GET_BUILTIN", "(", "msa_fsqrt_d", ")", ";", "break", ";", "case", "BUILT_IN_SQRTF", ":", "if", "(", "out_mode", "==", "SFmode", "&&", "out_n", "==", "4", "&&", "in_mode", "==", "SFmode", "&&", "in_n", "==", "4", ")", "return", "MIPS_GET_BUILTIN", "(", "msa_fsqrt_w", ")", ";", "break", ";", "default", ":", "break", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION", "."], "TS_V_token": ["mips", "2", "2", "4", "4"], "File": "mips", "Func": "mips_builtin_vectorized_function", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32870, "Length": 158} {"ground_truth": ["", "static", "tree", "mips_builtin_vector_type", "(", "tree", "type", ",", "machine_mode", "mode", ")", "{", "static", "tree", "types", "[", "2", "*", "(", "int", ")", "MAX_MACHINE_MODE", "]", ";", "int", "mode_index", ";", "mode_index", "=", "(", "int", ")", "mode", ";", "if", "(", "TREE_CODE", "(", "type", ")", "==", "INTEGER_TYPE", "&&", "TYPE_UNSIGNED", "(", "type", ")", ")", "mode_index", "+=", "MAX_MACHINE_MODE", ";", "if", "(", "types", "[", "mode_index", "]", "==", "NULL_TREE", ")", "types", "[", "mode_index", "]", "=", "build_vector_type_for_mode", "(", "type", ",", "mode", ")", ";", "return", "types", "[", "mode_index", "]", ";", "}", ""], "natrual_language": ["MODE", "is", "a", "vector", "mode", "whose", "elements", "have", "type", "TYPE", ".", "Return", "the", "type", "of", "the", "vector", "itself", "."], "TS_V_token": ["mips", "2"], "File": "mips", "Func": "mips_builtin_vector_type", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32871, "Length": 79} {"ground_truth": ["", "static", "bool", "mips_callee_copies", "(", "cumulative_args_t", ",", "const", "function_arg_info", "&", "arg", ")", "{", "return", "mips_abi", "==", "ABI_EABI", "&&", "arg", ".", "named", ";", "}", ""], "natrual_language": ["Implement", "TARGET_CALLEE_COPIES", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_callee_copies", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32872, "Length": 22} {"ground_truth": ["", "static", "rtx", "mips_call_expr_from_insn", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "second_call", ")", "{", "rtx", "x", ";", "rtx", "x2", ";", "if", "(", "!", "CALL_P", "(", "insn", ")", ")", "return", "NULL_RTX", ";", "x", "=", "PATTERN", "(", "insn", ")", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "PARALLEL", ")", "{", "x2", "=", "XVECEXP", "(", "x", ",", "0", ",", "1", ")", ";", "if", "(", "GET_CODE", "(", "x2", ")", "==", "SET", ")", "x2", "=", "XEXP", "(", "x2", ",", "1", ")", ";", "if", "(", "GET_CODE", "(", "x2", ")", "==", "CALL", ")", "*", "second_call", "=", "x2", ";", "x", "=", "XVECEXP", "(", "x", ",", "0", ",", "0", ")", ";", "}", "if", "(", "GET_CODE", "(", "x", ")", "==", "SET", ")", "x", "=", "XEXP", "(", "x", ",", "1", ")", ";", "gcc_assert", "(", "GET_CODE", "(", "x", ")", "==", "CALL", ")", ";", "return", "x", ";", "}", ""], "natrual_language": ["If", "INSN", "is", "a", "call", ",", "return", "the", "underlying", "CALL", "expr", ".", "Return", "NULL_RTX", "otherwise", ".", "If", "INSN", "has", "two", "call", "rtx", ",", "then", "store", "the", "second", "one", "in", "SECOND_CALL", "."], "TS_V_token": ["mips", "0", "1", "1", "0", "0", "1"], "File": "mips", "Func": "mips_call_expr_from_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32873, "Length": 134} {"ground_truth": ["", "static", "bool", "mips_call_may_need_jalx_p", "(", "tree", "decl", ")", "{", "if", "(", "mips_get_compress_mode", "(", "decl", ")", "!=", "TARGET_COMPRESSION", ")", "return", "true", ";", "if", "(", "!", "DECL_EXTERNAL", "(", "decl", ")", "&&", "targetm", ".", "binds_local_p", "(", "decl", ")", ")", "return", "false", ";", "if", "(", "TARGET_INTERLINK_COMPRESSED", ")", "{", "if", "(", "!", "TARGET_COMPRESSION", "&&", "mips_get_compress_off_flags", "(", "DECL_ATTRIBUTES", "(", "decl", ")", ")", "==", "0", ")", "return", "true", ";", "if", "(", "TARGET_COMPRESSION", "&&", "mips_get_compress_on_flags", "(", "DECL_ATTRIBUTES", "(", "decl", ")", ")", "==", "0", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "call", "to", "DECL", "may", "need", "to", "use", "JALX", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_call_may_need_jalx_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32874, "Length": 83} {"ground_truth": ["", "static", "rtx_insn", "*", "mips_call_tls_get_addr", "(", "rtx", "sym", ",", "enum", "mips_symbol_type", "type", ",", "rtx", "v0", ")", "{", "rtx", "loc", ",", "a0", ";", "rtx_insn", "*", "insn", ";", "a0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "!", "mips_tls_symbol", ")", "mips_tls_symbol", "=", "init_one_libfunc", "(", "\"__tls_get_addr\"", ")", ";", "loc", "=", "mips_unspec_address", "(", "sym", ",", "type", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "a0", ",", "gen_rtx_LO_SUM", "(", "Pmode", ",", "pic_offset_table_rtx", ",", "loc", ")", ")", ")", ";", "insn", "=", "mips_expand_call", "(", "MIPS_CALL_NORMAL", ",", "v0", ",", "mips_tls_symbol", ",", "const0_rtx", ",", "NULL_RTX", ",", "false", ")", ";", "RTL_CONST_CALL_P", "(", "insn", ")", "=", "1", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "a0", ")", ";", "insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "return", "insn", ";", "}", ""], "natrual_language": ["Return", "an", "instruction", "sequence", "that", "calls", "__tls_get_addr", ".", "SYM", "is", "the", "TLS", "symbol", "we", "are", "referencing", "and", "TYPE", "is", "the", "symbol", "type", "to", "use", "(", "either", "global", "dynamic", "or", "local", "dynamic", ")", ".", "V0", "is", "an", "RTX", "for", "the", "return", "value", "location", "."], "TS_V_token": ["mips", "\"__tls_get_addr\"", "1"], "File": "mips", "Func": "mips_call_tls_get_addr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32875, "Length": 125} {"ground_truth": ["", "static", "bool", "mips_cannot_force_const_mem", "(", "machine_mode", "mode", ",", "rtx", "x", ")", "{", "enum", "mips_symbol_type", "type", ";", "rtx", "base", ",", "offset", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "HIGH", ")", "return", "true", ";", "if", "(", "(", "CONST_INT_P", "(", "x", ")", "||", "GET_CODE", "(", "x", ")", "==", "CONST_VECTOR", ")", "&&", "mips_legitimate_constant_p", "(", "mode", ",", "x", ")", ")", "return", "true", ";", "split_const", "(", "x", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "mips_symbolic_constant_p", "(", "base", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "type", ")", ")", "{", "if", "(", "mips_use_pcrel_pool_p", "[", "(", "int", ")", "type", "]", ")", "return", "false", ";", "if", "(", "SMALL_INT", "(", "offset", ")", "&&", "mips_symbol_insns", "(", "type", ",", "MAX_MACHINE_MODE", ")", ">", "0", ")", "return", "true", ";", "if", "(", "TARGET_MIPS16_PCREL_LOADS", "&&", "mips_got_symbol_type_p", "(", "type", ")", ")", "return", "true", ";", "}", "if", "(", "tls_referenced_p", "(", "x", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "can", "not", "be", "forced", "into", "a", "constant", "pool", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_cannot_force_const_mem", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32876, "Length": 141} {"ground_truth": ["", "static", "bool", "mips_canonicalize_int_order_test", "(", "enum", "rtx_code", "*", "code", ",", "rtx", "*", "cmp1", ",", "machine_mode", "mode", ")", "{", "HOST_WIDE_INT", "plus_one", ";", "if", "(", "mips_int_order_operand_ok_p", "(", "*", "code", ",", "*", "cmp1", ")", ")", "return", "true", ";", "if", "(", "CONST_INT_P", "(", "*", "cmp1", ")", ")", "switch", "(", "*", "code", ")", "{", "case", "LE", ":", "plus_one", "=", "trunc_int_for_mode", "(", "UINTVAL", "(", "*", "cmp1", ")", "+", "1", ",", "mode", ")", ";", "if", "(", "INTVAL", "(", "*", "cmp1", ")", "<", "plus_one", ")", "{", "*", "code", "=", "LT", ";", "*", "cmp1", "=", "force_reg", "(", "mode", ",", "GEN_INT", "(", "plus_one", ")", ")", ";", "return", "true", ";", "}", "break", ";", "case", "LEU", ":", "plus_one", "=", "trunc_int_for_mode", "(", "UINTVAL", "(", "*", "cmp1", ")", "+", "1", ",", "mode", ")", ";", "if", "(", "plus_one", "!=", "0", ")", "{", "*", "code", "=", "LTU", ";", "*", "cmp1", "=", "force_reg", "(", "mode", ",", "GEN_INT", "(", "plus_one", ")", ")", ";", "return", "true", ";", "}", "break", ";", "default", ":", "break", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "*", "CMP1", "(", "of", "mode", "MODE", ")", "is", "a", "valid", "second", "operand", "for", "integer", "ordering", "test", "*", "CODE", ",", "or", "if", "an", "equivalent", "combination", "can", "be", "formed", "by", "adjusting", "*", "CODE", "and", "*", "CMP1", ".", "When", "returning", "true", ",", "update", "*", "CODE", "and", "*", "CMP1", "with", "the", "chosen", "code", "and", "operand", ",", "otherwise", "leave", "them", "alone", "."], "TS_V_token": ["mips", "1", "1", "0"], "File": "mips", "Func": "mips_canonicalize_int_order_test", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32877, "Length": 159} {"ground_truth": ["", "static", "reg_class_t", "mips_canonicalize_move_class", "(", "reg_class_t", "rclass", ")", "{", "if", "(", "reg_class_subset_p", "(", "rclass", ",", "ACC_REGS", ")", ")", "rclass", "=", "ACC_REGS", ";", "if", "(", "TARGET_MIPS16", "&&", "reg_class_subset_p", "(", "rclass", ",", "M16_REGS", ")", ")", "rclass", "=", "M16_REGS", ";", "else", "if", "(", "reg_class_subset_p", "(", "rclass", ",", "GENERAL_REGS", ")", ")", "rclass", "=", "GENERAL_REGS", ";", "return", "rclass", ";", "}", ""], "natrual_language": ["RCLASS", "is", "a", "class", "involved", "in", "a", "REGISTER_MOVE_COST", "calculation", ".", "Return", "a", "``", "canonical", "''", "class", "to", "represent", "it", "in", "later", "calculations", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_canonicalize_move_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32878, "Length": 54} {"ground_truth": ["", "static", "bool", "mips_can_change_mode_class", "(", "machine_mode", "from", ",", "machine_mode", "to", ",", "reg_class_t", "rclass", ")", "{", "if", "(", "GET_MODE_SIZE", "(", "from", ")", "==", "8", "&&", "GET_MODE_SIZE", "(", "to", ")", "==", "8", "&&", "INTEGRAL_MODE_P", "(", "from", ")", "&&", "INTEGRAL_MODE_P", "(", "to", ")", ")", "return", "true", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "from", ")", "&&", "MSA_SUPPORTED_MODE_P", "(", "to", ")", ")", "return", "true", ";", "return", "!", "reg_classes_intersect_p", "(", "FP_REGS", ",", "rclass", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_CAN_CHANGE_MODE_CLASS", "."], "TS_V_token": ["mips", "8", "8"], "File": "mips", "Func": "mips_can_change_mode_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32879, "Length": 68} {"ground_truth": ["", "static", "bool", "mips_can_eliminate", "(", "const", "int", "from", "ATTRIBUTE_UNUSED", ",", "const", "int", "to", ")", "{", "return", "(", "to", "==", "HARD_FRAME_POINTER_REGNUM", "||", "to", "==", "STACK_POINTER_REGNUM", ")", ";", "}", ""], "natrual_language": ["Make", "sure", "that", "we", "'re", "not", "trying", "to", "eliminate", "to", "the", "wrong", "hard", "frame", "pointer", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_can_eliminate", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32880, "Length": 26} {"ground_truth": ["", "static", "bool", "mips_can_inline_p", "(", "tree", "caller", ",", "tree", "callee", ")", "{", "if", "(", "mips_get_compress_mode", "(", "callee", ")", "!=", "mips_get_compress_mode", "(", "caller", ")", ")", "return", "false", ";", "return", "default_target_can_inline_p", "(", "caller", ",", "callee", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_CAN_INLINE_P", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_can_inline_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32881, "Length": 35} {"ground_truth": ["", "bool", "mips_can_use_return_insn", "(", "void", ")", "{", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", ")", "return", "false", ";", "if", "(", "!", "reload_completed", ")", "return", "false", ";", "if", "(", "crtl", "->", "profile", ")", "return", "false", ";", "if", "(", "mips16_cfun_returns_in_fpr_p", "(", ")", ")", "return", "false", ";", "return", "(", "cfun", "->", "machine", "->", "frame", ".", "total_size", "==", "0", "&&", "!", "cfun", "->", "machine", "->", "use_frame_header_for_callee_saved_regs", ")", ";", "}", ""], "natrual_language": ["Return", "nonzero", "if", "this", "function", "is", "known", "to", "have", "a", "null", "epilogue", ".", "This", "allows", "the", "optimizer", "to", "omit", "jumps", "to", "jumps", "if", "no", "stack", "was", "created", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_can_use_return_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32882, "Length": 64} {"ground_truth": ["", "unsigned", "int", "mips_case_values_threshold", "(", "void", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "optimize_size", ")", "return", "10", ";", "else", "return", "default_case_values_threshold", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_CASE_VALUES_THRESHOLD", "."], "TS_V_token": ["mips", "10"], "File": "mips", "Func": "mips_case_values_threshold", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32883, "Length": 23} {"ground_truth": ["", "static", "bool", "mips_cfg_in_reorg", "(", "void", ")", "{", "return", "(", "mips_r10k_cache_barrier", "!=", "R10K_CACHE_BARRIER_NONE", "||", "TARGET_RELAX_PIC_CALLS", ")", ";", "}", ""], "natrual_language": ["Return", "whether", "CFG", "is", "used", "in", "mips_reorg", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cfg_in_reorg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32884, "Length": 17} {"ground_truth": ["", "static", "bool", "mips_cfun_call_saved_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "global_regs", "[", "regno", "]", ")", "return", "false", ";", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", "&&", "mips_interrupt_extra_call_saved_reg_p", "(", "regno", ")", ")", "return", "true", ";", "return", "(", "regno", "==", "GLOBAL_POINTER_REGNUM", "?", "TARGET_CALL_SAVED_GP", ":", "!", "call_used_regs", "[", "regno", "]", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "should", "treat", "register", "REGNO", "as", "call-saved", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cfun_call_saved_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32885, "Length": 51} {"ground_truth": ["", "bool", "mips_cfun_has_cprestore_slot_p", "(", "void", ")", "{", "return", "(", "cfun", "->", "machine", "->", "global_pointer", "!=", "INVALID_REGNUM", "&&", "cfun", "->", "machine", "->", "frame", ".", "cprestore_size", ">", "0", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "has", "a", "cprestore", "slot", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_cfun_has_cprestore_slot_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32886, "Length": 28} {"ground_truth": ["", "static", "bool", "mips_cfun_has_flexible_gp_ref_p", "(", "void", ")", "{", "if", "(", "TARGET_ABICALLS_PIC2", "&&", "!", "reload_completed", "&&", "crtl", "->", "uses_const_pool", ")", "return", "true", ";", "return", "mips_find_gp_ref", "(", "&", "cfun", "->", "machine", "->", "has_flexible_gp_insn_p", ",", "mips_insn_has_flexible_gp_ref_p", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "references", "the", "global", "pointer", ",", "but", "if", "those", "references", "do", "not", "inherently", "require", "the", "global", "pointer", "to", "be", "$", "28", ".", "Assume", "!", "mips_cfun_has_inflexible_gp_ref_p", "(", ")", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cfun_has_flexible_gp_ref_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32887, "Length": 35} {"ground_truth": ["", "static", "bool", "mips_cfun_has_inflexible_gp_ref_p", "(", "void", ")", "{", "if", "(", "crtl", "->", "has_nonlocal_goto", ")", "return", "true", ";", "if", "(", "TARGET_ABICALLS_PIC2", ")", "{", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "return", "true", ";", "if", "(", "crtl", "->", "profile", ")", "return", "true", ";", "if", "(", "mips16_cfun_returns_in_fpr_p", "(", ")", ")", "return", "true", ";", "}", "return", "mips_find_gp_ref", "(", "&", "cfun", "->", "machine", "->", "has_inflexible_gp_insn_p", ",", "mips_insn_has_inflexible_gp_ref_p", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "refers", "to", "the", "global", "pointer", "in", "a", "way", "that", "forces", "$", "28", "to", "be", "valid", ".", "This", "means", "that", "we", "ca", "n't", "change", "the", "choice", "of", "global", "pointer", ",", "even", "for", "NewABI", "code", ".", "One", "example", "of", "this", "(", "and", "one", "which", "needs", "several", "checks", ")", "is", "that", "$", "28", "must", "be", "valid", "when", "calling", "traditional", "MIPS", "lazy-binding", "stubs", ".", "(", "This", "restriction", "does", "not", "apply", "to", "PLTs", ".", ")"], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cfun_has_inflexible_gp_ref_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32888, "Length": 62} {"ground_truth": ["", "static", "bool", "mips_cfun_might_clobber_call_saved_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "crtl", "->", "saves_all_registers", ")", "return", "true", ";", "if", "(", "df_regs_ever_live_p", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "crtl", "->", "profile", "&&", "MIPS_SAVE_REG_FOR_PROFILING_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "cfun", "->", "machine", "->", "global_pointer", "==", "regno", ")", "return", "true", ";", "if", "(", "regno", "==", "HARD_FRAME_POINTER_REGNUM", "&&", "frame_pointer_needed", ")", "return", "true", ";", "if", "(", "regno", "==", "RETURN_ADDR_REGNUM", "&&", "mips16_cfun_returns_in_fpr_p", "(", ")", ")", "return", "true", ";", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", "&&", "!", "crtl", "->", "is_leaf", "&&", "mips_interrupt_extra_call_saved_reg_p", "(", "regno", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "function", "body", "might", "clobber", "register", "REGNO", ".", "We", "know", "that", "REGNO", "is", "call-saved", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cfun_might_clobber_call_saved_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32889, "Length": 104} {"ground_truth": ["", "static", "bool", "mips_classify_address", "(", "struct", "mips_address_info", "*", "info", ",", "rtx", "x", ",", "machine_mode", "mode", ",", "bool", "strict_p", ")", "{", "switch", "(", "GET_CODE", "(", "x", ")", ")", "{", "case", "REG", ":", "case", "SUBREG", ":", "info", "->", "type", "=", "ADDRESS_REG", ";", "info", "->", "reg", "=", "x", ";", "info", "->", "offset", "=", "const0_rtx", ";", "return", "mips_valid_base_register_p", "(", "info", "->", "reg", ",", "mode", ",", "strict_p", ")", ";", "case", "PLUS", ":", "info", "->", "type", "=", "ADDRESS_REG", ";", "info", "->", "reg", "=", "XEXP", "(", "x", ",", "0", ")", ";", "info", "->", "offset", "=", "XEXP", "(", "x", ",", "1", ")", ";", "return", "(", "mips_valid_base_register_p", "(", "info", "->", "reg", ",", "mode", ",", "strict_p", ")", "&&", "mips_valid_offset_p", "(", "info", "->", "offset", ",", "mode", ")", ")", ";", "case", "LO_SUM", ":", "info", "->", "type", "=", "ADDRESS_LO_SUM", ";", "info", "->", "reg", "=", "XEXP", "(", "x", ",", "0", ")", ";", "info", "->", "offset", "=", "XEXP", "(", "x", ",", "1", ")", ";", "info", "->", "symbol_type", "=", "mips_classify_symbolic_expression", "(", "info", "->", "offset", ",", "SYMBOL_CONTEXT_MEM", ")", ";", "return", "(", "mips_valid_base_register_p", "(", "info", "->", "reg", ",", "mode", ",", "strict_p", ")", "&&", "mips_valid_lo_sum_p", "(", "info", "->", "symbol_type", ",", "mode", ")", ")", ";", "case", "CONST_INT", ":", "info", "->", "type", "=", "ADDRESS_CONST_INT", ";", "return", "!", "TARGET_MIPS16", "&&", "SMALL_INT", "(", "x", ")", ";", "case", "CONST", ":", "case", "LABEL_REF", ":", "case", "SYMBOL_REF", ":", "info", "->", "type", "=", "ADDRESS_SYMBOLIC", ";", "return", "(", "mips_symbolic_constant_p", "(", "x", ",", "SYMBOL_CONTEXT_MEM", ",", "&", "info", "->", "symbol_type", ")", "&&", "mips_symbol_insns", "(", "info", "->", "symbol_type", ",", "mode", ")", ">", "0", "&&", "!", "mips_split_p", "[", "info", "->", "symbol_type", "]", ")", ";", "default", ":", "return", "false", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "valid", "address", "for", "machine", "mode", "MODE", ".", "If", "it", "is", ",", "fill", "in", "INFO", "appropriately", ".", "STRICT", "is", "true", "if", "we", "should", "only", "accept", "hard", "base", "registers", "."], "TS_V_token": ["mips", "0", "1", "0", "1", "0"], "File": "mips", "Func": "mips_classify_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32890, "Length": 258} {"ground_truth": ["", "static", "enum", "mips_ucbranch_type", "mips_classify_branch_p6600", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "!", "insn", "||", "!", "USEFUL_INSN_P", "(", "insn", ")", "||", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "SEQUENCE", ")", "return", "UC_UNDEFINED", ";", "if", "(", "get_attr_jal", "(", "insn", ")", "==", "JAL_INDIRECT", "||", "get_attr_type", "(", "insn", ")", "==", "TYPE_JUMP", ")", "return", "UC_OTHER", ";", "if", "(", "CALL_P", "(", "insn", ")", "&&", "get_attr_jal", "(", "insn", ")", "==", "JAL_DIRECT", ")", "return", "UC_BALC", ";", "return", "UC_UNDEFINED", ";", "}", ""], "natrual_language": ["Subroutine", "of", "mips_avoid_hazard", ".", "We", "classify", "unconditional", "branches", "of", "interest", "for", "the", "P6600", "for", "performance", "reasons", ".", "We", "'re", "interested", "in", "differentiating", "BALC", "from", "JIC", ",", "JIALC", "and", "BC", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_classify_branch_p6600", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32891, "Length": 74} {"ground_truth": ["", "static", "enum", "mips_symbol_type", "mips_classify_symbol", "(", "const_rtx", "x", ",", "enum", "mips_symbol_context", "context", ")", "{", "if", "(", "TARGET_RTP_PIC", ")", "return", "SYMBOL_GOT_DISP", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "LABEL_REF", ")", "{", "if", "(", "TARGET_MIPS16_SHORT_JUMP_TABLES", "&&", "!", "LABEL_REF_NONLOCAL_P", "(", "x", ")", ")", "return", "SYMBOL_PC_RELATIVE", ";", "if", "(", "TARGET_ABICALLS", "&&", "!", "TARGET_ABSOLUTE_ABICALLS", ")", "return", "SYMBOL_GOT_PAGE_OFST", ";", "return", "SYMBOL_ABSOLUTE", ";", "}", "gcc_assert", "(", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", ")", ";", "if", "(", "SYMBOL_REF_TLS_MODEL", "(", "x", ")", ")", "return", "SYMBOL_TLS", ";", "if", "(", "CONSTANT_POOL_ADDRESS_P", "(", "x", ")", ")", "{", "if", "(", "TARGET_MIPS16_TEXT_LOADS", ")", "return", "SYMBOL_PC_RELATIVE", ";", "if", "(", "TARGET_MIPS16_PCREL_LOADS", "&&", "context", "==", "SYMBOL_CONTEXT_MEM", ")", "return", "SYMBOL_PC_RELATIVE", ";", "if", "(", "mips_rtx_constant_in_small_data_p", "(", "get_pool_mode", "(", "x", ")", ")", ")", "return", "SYMBOL_GP_RELATIVE", ";", "}", "if", "(", "TARGET_GPOPT", "&&", "SYMBOL_REF_SMALL_P", "(", "x", ")", "&&", "!", "SYMBOL_REF_WEAK", "(", "x", ")", ")", "return", "SYMBOL_GP_RELATIVE", ";", "if", "(", "TARGET_ABICALLS_PIC2", "&&", "!", "(", "TARGET_ABSOLUTE_ABICALLS", "&&", "mips_symbol_binds_local_p", "(", "x", ")", ")", ")", "{", "if", "(", "mips_global_symbol_p", "(", "x", ")", ")", "return", "SYMBOL_GOT_DISP", ";", "return", "SYMBOL_GOT_PAGE_OFST", ";", "}", "return", "SYMBOL_ABSOLUTE", ";", "}", ""], "natrual_language": ["Classify", "symbol", "X", ",", "which", "must", "be", "a", "SYMBOL_REF", "or", "a", "LABEL_REF", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_classify_symbol", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32892, "Length": 168} {"ground_truth": ["", "static", "enum", "mips_symbol_type", "mips_classify_symbolic_expression", "(", "rtx", "x", ",", "enum", "mips_symbol_context", "context", ")", "{", "rtx", "offset", ";", "split_const", "(", "x", ",", "&", "x", ",", "&", "offset", ")", ";", "if", "(", "UNSPEC_ADDRESS_P", "(", "x", ")", ")", "return", "UNSPEC_ADDRESS_TYPE", "(", "x", ")", ";", "return", "mips_classify_symbol", "(", "x", ",", "context", ")", ";", "}", ""], "natrual_language": ["Classify", "the", "base", "of", "symbolic", "expression", "X", ",", "given", "that", "X", "appears", "in", "context", "CONTEXT", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_classify_symbolic_expression", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32893, "Length": 49} {"ground_truth": ["", "int", "mips_class_max_nregs", "(", "enum", "reg_class", "rclass", ",", "machine_mode", "mode", ")", "{", "int", "size", ";", "HARD_REG_SET", "left", ";", "size", "=", "0x8000", ";", "left", "=", "reg_class_contents", "[", "rclass", "]", ";", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "ST_REGS", "]", ")", ")", "{", "if", "(", "mips_hard_regno_mode_ok", "(", "ST_REG_FIRST", ",", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "4", ")", ";", "left", "&=", "~", "reg_class_contents", "[", "ST_REGS", "]", ";", "}", "if", "(", "hard_reg_set_intersect_p", "(", "left", ",", "reg_class_contents", "[", "(", "int", ")", "FP_REGS", "]", ")", ")", "{", "if", "(", "mips_hard_regno_mode_ok", "(", "FP_REG_FIRST", ",", "mode", ")", ")", "{", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_MSA_REG", ")", ";", "else", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_FPREG", ")", ";", "}", "left", "&=", "~", "reg_class_contents", "[", "FP_REGS", "]", ";", "}", "if", "(", "!", "hard_reg_set_empty_p", "(", "left", ")", ")", "size", "=", "MIN", "(", "size", ",", "UNITS_PER_WORD", ")", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "size", "-", "1", ")", "/", "size", ";", "}", ""], "natrual_language": ["Implement", "CLASS_MAX_NREGS", ".", "Usually", "all", "registers", "are", "word-sized", ".", "The", "only", "supported", "exception", "is", "-mgp64", "-msingle-float", ",", "which", "has", "64-bit", "words", "but", "32-bit", "float", "registers", ".", "A", "word-based", "calculation", "is", "correct", "even", "in", "that", "case", ",", "since", "-msingle-float", "disallows", "multi-FPR", "values", ".", "The", "FP", "status", "registers", "are", "an", "exception", "to", "this", "rule", ".", "They", "are", "always", "4", "bytes", "wide", "as", "they", "only", "hold", "condition", "code", "modes", ",", "and", "CCmode", "is", "always", "considered", "to", "be", "4", "bytes", "wide", "."], "TS_V_token": ["mips", "0x8000", "4", "1"], "File": "mips", "Func": "mips_class_max_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32894, "Length": 165} {"ground_truth": ["", "static", "void", "mips_code_end", "(", "void", ")", "{", "mips_finish_stub", "(", "&", "mips16_rdhwr_stub", ")", ";", "mips_finish_stub", "(", "&", "mips16_get_fcsr_stub", ")", ";", "mips_finish_stub", "(", "&", "mips16_set_fcsr_stub", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_CODE_END", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_code_end", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32895, "Length": 26} {"ground_truth": ["", "static", "int", "mips_comp_type_attributes", "(", "const_tree", "type1", ",", "const_tree", "type2", ")", "{", "if", "(", "mips_far_type_p", "(", "type1", ")", "&&", "mips_near_type_p", "(", "type2", ")", ")", "return", "0", ";", "if", "(", "mips_near_type_p", "(", "type1", ")", "&&", "mips_far_type_p", "(", "type2", ")", ")", "return", "0", ";", "return", "1", ";", "}", ""], "natrual_language": ["Implement", "TARGET_COMP_TYPE_ATTRIBUTES", "."], "TS_V_token": ["mips", "0", "0", "1"], "File": "mips", "Func": "mips_comp_type_attributes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32896, "Length": 45} {"ground_truth": ["", "static", "void", "mips_conditional_register_usage", "(", "void", ")", "{", "if", "(", "ISA_HAS_DSP", ")", "{", "global_regs", "[", "CCDSP_PO_REGNUM", "]", "=", "1", ";", "global_regs", "[", "CCDSP_SC_REGNUM", "]", "=", "1", ";", "}", "else", "accessible_reg_set", "&=", "~", "reg_class_contents", "[", "DSP_ACC_REGS", "]", ";", "if", "(", "!", "ISA_HAS_HILO", ")", "accessible_reg_set", "&=", "~", "reg_class_contents", "[", "MD_REGS", "]", ";", "if", "(", "!", "TARGET_HARD_FLOAT", ")", "accessible_reg_set", "&=", "~", "(", "reg_class_contents", "[", "FP_REGS", "]", "|", "reg_class_contents", "[", "ST_REGS", "]", ")", ";", "else", "if", "(", "!", "ISA_HAS_8CC", ")", "{", "accessible_reg_set", "&=", "~", "reg_class_contents", "[", "ST_REGS", "]", ";", "if", "(", "!", "ISA_HAS_CCF", ")", "SET_HARD_REG_BIT", "(", "accessible_reg_set", ",", "FPSW_REGNUM", ")", ";", "fixed_regs", "[", "FPSW_REGNUM", "]", "=", "1", ";", "}", "if", "(", "TARGET_MIPS16", ")", "{", "fixed_regs", "[", "18", "]", "=", "1", ";", "fixed_regs", "[", "19", "]", "=", "1", ";", "fixed_regs", "[", "20", "]", "=", "1", ";", "fixed_regs", "[", "21", "]", "=", "1", ";", "fixed_regs", "[", "22", "]", "=", "1", ";", "fixed_regs", "[", "23", "]", "=", "1", ";", "fixed_regs", "[", "26", "]", "=", "1", ";", "fixed_regs", "[", "27", "]", "=", "1", ";", "fixed_regs", "[", "30", "]", "=", "1", ";", "if", "(", "optimize_size", ")", "{", "fixed_regs", "[", "8", "]", "=", "1", ";", "fixed_regs", "[", "9", "]", "=", "1", ";", "fixed_regs", "[", "10", "]", "=", "1", ";", "fixed_regs", "[", "11", "]", "=", "1", ";", "fixed_regs", "[", "12", "]", "=", "1", ";", "fixed_regs", "[", "13", "]", "=", "1", ";", "fixed_regs", "[", "14", "]", "=", "1", ";", "fixed_regs", "[", "15", "]", "=", "1", ";", "}", "operand_reg_set", "&=", "~", "reg_class_contents", "[", "MD_REGS", "]", ";", "}", "if", "(", "mips_abi", "==", "ABI_64", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", "+", "20", ";", "regno", "<", "FP_REG_FIRST", "+", "24", ";", "regno", "++", ")", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "mips_abi", "==", "ABI_N32", "||", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", ")", ")", "{", "int", "regno", ";", "for", "(", "regno", "=", "FP_REG_FIRST", "+", "21", ";", "regno", "<=", "FP_REG_FIRST", "+", "31", ";", "regno", "+=", "2", ")", "call_used_regs", "[", "regno", "]", "=", "1", ";", "}", "if", "(", "TARGET_LITTLE_ENDIAN", ")", "{", "unsigned", "int", "regno", ";", "mips_swap_registers", "(", "MD_REG_FIRST", ")", ";", "for", "(", "regno", "=", "DSP_ACC_REG_FIRST", ";", "regno", "<=", "DSP_ACC_REG_LAST", ";", "regno", "+=", "2", ")", "mips_swap_registers", "(", "regno", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "CONDITIONAL_REGISTER_USAGE", "."], "TS_V_token": ["mips", "1", "1", "1", "18", "1", "19", "1", "20", "1", "21", "1", "22", "1", "23", "1", "26", "1", "27", "1", "30", "1", "8", "1", "9", "1", "10", "1", "11", "1", "12", "1", "13", "1", "14", "1", "15", "1", "20", "24", "1", "21", "31", "2", "1", "2"], "File": "mips", "Func": "mips_conditional_register_usage", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32897, "Length": 357} {"ground_truth": ["", "static", "HOST_WIDE_INT", "mips_constant_alignment", "(", "const_tree", "exp", ",", "HOST_WIDE_INT", "align", ")", "{", "if", "(", "TREE_CODE", "(", "exp", ")", "==", "STRING_CST", "||", "TREE_CODE", "(", "exp", ")", "==", "CONSTRUCTOR", ")", "return", "MAX", "(", "align", ",", "BITS_PER_WORD", ")", ";", "return", "align", ";", "}", ""], "natrual_language": ["Implement", "TARGET_CONSTANT_ALIGNMENT", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_constant_alignment", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32898, "Length": 39} {"ground_truth": ["", "static", "inline", "bool", "mips_constant_elt_p", "(", "rtx", "x", ")", "{", "return", "CONST_INT_P", "(", "x", ")", "||", "GET_CODE", "(", "x", ")", "==", "CONST_DOUBLE", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "match", "constant", "vector", "elements", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_constant_elt_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32899, "Length": 23} {"ground_truth": ["", "int", "mips_const_insns", "(", "rtx", "x", ")", "{", "struct", "mips_integer_op", "codes", "[", "MIPS_MAX_INTEGER_OPS", "]", ";", "enum", "mips_symbol_type", "symbol_type", ";", "rtx", "offset", ";", "switch", "(", "GET_CODE", "(", "x", ")", ")", "{", "case", "HIGH", ":", "if", "(", "!", "mips_symbolic_constant_p", "(", "XEXP", "(", "x", ",", "0", ")", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "symbol_type", ")", "||", "!", "mips_split_p", "[", "symbol_type", "]", ")", "return", "0", ";", "return", "TARGET_MIPS16", "?", "4", ":", "1", ";", "case", "CONST_INT", ":", "if", "(", "TARGET_MIPS16", ")", "return", "(", "IN_RANGE", "(", "INTVAL", "(", "x", ")", ",", "0", ",", "255", ")", "?", "1", ":", "SMALL_OPERAND_UNSIGNED", "(", "INTVAL", "(", "x", ")", ")", "?", "2", ":", "IN_RANGE", "(", "-", "INTVAL", "(", "x", ")", ",", "0", ",", "255", ")", "?", "2", ":", "SMALL_OPERAND_UNSIGNED", "(", "-", "INTVAL", "(", "x", ")", ")", "?", "3", ":", "0", ")", ";", "return", "mips_build_integer", "(", "codes", ",", "INTVAL", "(", "x", ")", ")", ";", "case", "CONST_VECTOR", ":", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "GET_MODE", "(", "x", ")", ")", "&&", "mips_const_vector_same_int_p", "(", "x", ",", "GET_MODE", "(", "x", ")", ",", "-", "512", ",", "511", ")", ")", "return", "1", ";", "case", "CONST_DOUBLE", ":", "return", "!", "TARGET_MIPS16", "&&", "x", "==", "CONST0_RTX", "(", "GET_MODE", "(", "x", ")", ")", "?", "1", ":", "0", ";", "case", "CONST", ":", "if", "(", "CONST_GP_P", "(", "x", ")", ")", "return", "1", ";", "if", "(", "mips_symbolic_constant_p", "(", "x", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "symbol_type", ")", ")", "return", "mips_symbol_insns", "(", "symbol_type", ",", "MAX_MACHINE_MODE", ")", ";", "split_const", "(", "x", ",", "&", "x", ",", "&", "offset", ")", ";", "if", "(", "offset", "!=", "0", ")", "{", "int", "n", "=", "mips_const_insns", "(", "x", ")", ";", "if", "(", "n", "!=", "0", ")", "{", "if", "(", "SMALL_INT", "(", "offset", ")", ")", "return", "n", "+", "1", ";", "else", "if", "(", "!", "targetm", ".", "cannot_force_const_mem", "(", "GET_MODE", "(", "x", ")", ",", "x", ")", ")", "return", "n", "+", "1", "+", "mips_build_integer", "(", "codes", ",", "INTVAL", "(", "offset", ")", ")", ";", "}", "}", "return", "0", ";", "case", "SYMBOL_REF", ":", "case", "LABEL_REF", ":", "return", "mips_symbol_insns", "(", "mips_classify_symbol", "(", "x", ",", "SYMBOL_CONTEXT_LEA", ")", ",", "MAX_MACHINE_MODE", ")", ";", "default", ":", "return", "0", ";", "}", "}", ""], "natrual_language": ["Likewise", "for", "constant", "X", "."], "TS_V_token": ["mips", "0", "0", "4", "1", "0", "255", "1", "2", "0", "255", "2", "3", "0", "512", "511", "1", "1", "0", "1", "0", "0", "1", "1", "0", "0"], "File": "mips", "Func": "mips_const_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32900, "Length": 331} {"ground_truth": ["", "bool", "mips_const_vector_bitimm_clr_p", "(", "rtx", "op", ",", "machine_mode", "mode", ")", "{", "if", "(", "GET_CODE", "(", "op", ")", "==", "CONST_VECTOR", "&&", "op", "!=", "CONSTM1_RTX", "(", "mode", ")", ")", "{", "unsigned", "HOST_WIDE_INT", "val", "=", "~", "UINTVAL", "(", "CONST_VECTOR_ELT", "(", "op", ",", "0", ")", ")", ";", "int", "vlog2", "=", "exact_log2", "(", "val", "&", "GET_MODE_MASK", "(", "GET_MODE_INNER", "(", "mode", ")", ")", ")", ";", "if", "(", "vlog2", "!=", "-", "1", ")", "{", "gcc_assert", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_VECTOR_INT", ")", ";", "gcc_assert", "(", "vlog2", ">=", "0", "&&", "vlog2", "<=", "GET_MODE_UNIT_BITSIZE", "(", "mode", ")", "-", "1", ")", ";", "return", "mips_const_vector_same_val_p", "(", "op", ",", "mode", ")", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "is", "a", "constant", "vector", "with", "the", "number", "of", "units", "in", "MODE", ",", "and", "each", "unit", "has", "the", "same", "bit", "clear", "."], "TS_V_token": ["mips", "0", "1", "0", "1"], "File": "mips", "Func": "mips_const_vector_bitimm_clr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32901, "Length": 106} {"ground_truth": ["", "bool", "mips_const_vector_bitimm_set_p", "(", "rtx", "op", ",", "machine_mode", "mode", ")", "{", "if", "(", "GET_CODE", "(", "op", ")", "==", "CONST_VECTOR", "&&", "op", "!=", "CONST0_RTX", "(", "mode", ")", ")", "{", "unsigned", "HOST_WIDE_INT", "val", "=", "UINTVAL", "(", "CONST_VECTOR_ELT", "(", "op", ",", "0", ")", ")", ";", "int", "vlog2", "=", "exact_log2", "(", "val", "&", "GET_MODE_MASK", "(", "GET_MODE_INNER", "(", "mode", ")", ")", ")", ";", "if", "(", "vlog2", "!=", "-", "1", ")", "{", "gcc_assert", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_VECTOR_INT", ")", ";", "gcc_assert", "(", "vlog2", ">=", "0", "&&", "vlog2", "<=", "GET_MODE_UNIT_BITSIZE", "(", "mode", ")", "-", "1", ")", ";", "return", "mips_const_vector_same_val_p", "(", "op", ",", "mode", ")", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "is", "a", "constant", "vector", "with", "the", "number", "of", "units", "in", "MODE", ",", "and", "each", "unit", "has", "the", "same", "bit", "set", "."], "TS_V_token": ["mips", "0", "1", "0", "1"], "File": "mips", "Func": "mips_const_vector_bitimm_set_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32902, "Length": 105} {"ground_truth": ["", "bool", "mips_const_vector_same_bytes_p", "(", "rtx", "op", ",", "machine_mode", "mode", ")", "{", "int", "i", ",", "bytes", ";", "HOST_WIDE_INT", "val", ",", "first_byte", ";", "rtx", "first", ";", "if", "(", "!", "mips_const_vector_same_val_p", "(", "op", ",", "mode", ")", ")", "return", "false", ";", "first", "=", "CONST_VECTOR_ELT", "(", "op", ",", "0", ")", ";", "bytes", "=", "GET_MODE_UNIT_SIZE", "(", "mode", ")", ";", "val", "=", "INTVAL", "(", "first", ")", ";", "first_byte", "=", "val", "&", "0xff", ";", "for", "(", "i", "=", "1", ";", "i", "<", "bytes", ";", "i", "++", ")", "{", "val", ">>=", "8", ";", "if", "(", "(", "val", "&", "0xff", ")", "!=", "first_byte", ")", "return", "false", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "is", "a", "constant", "vector", "with", "the", "number", "of", "units", "in", "MODE", ",", "and", "each", "unit", "has", "the", "same", "value", "as", "well", "as", "replicated", "bytes", "in", "the", "value", "."], "TS_V_token": ["mips", "0", "0xff", "1", "8", "0xff"], "File": "mips", "Func": "mips_const_vector_same_bytes_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32903, "Length": 101} {"ground_truth": ["", "bool", "mips_const_vector_same_int_p", "(", "rtx", "op", ",", "machine_mode", "mode", ",", "HOST_WIDE_INT", "low", ",", "HOST_WIDE_INT", "high", ")", "{", "HOST_WIDE_INT", "value", ";", "rtx", "elem0", ";", "if", "(", "!", "mips_const_vector_same_val_p", "(", "op", ",", "mode", ")", ")", "return", "false", ";", "elem0", "=", "CONST_VECTOR_ELT", "(", "op", ",", "0", ")", ";", "if", "(", "!", "CONST_INT_P", "(", "elem0", ")", ")", "return", "false", ";", "value", "=", "INTVAL", "(", "elem0", ")", ";", "return", "(", "value", ">=", "low", "&&", "value", "<=", "high", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "is", "a", "constant", "vector", "with", "the", "number", "of", "units", "in", "MODE", ",", "and", "each", "unit", "has", "the", "same", "integer", "value", "in", "the", "range", "[", "LOW", ",", "HIGH", "]", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_const_vector_same_int_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32904, "Length": 74} {"ground_truth": ["", "bool", "mips_const_vector_same_val_p", "(", "rtx", "op", ",", "machine_mode", "mode", ")", "{", "int", "i", ",", "nunits", "=", "GET_MODE_NUNITS", "(", "mode", ")", ";", "rtx", "first", ";", "if", "(", "GET_CODE", "(", "op", ")", "!=", "CONST_VECTOR", "||", "GET_MODE", "(", "op", ")", "!=", "mode", ")", "return", "false", ";", "first", "=", "CONST_VECTOR_ELT", "(", "op", ",", "0", ")", ";", "for", "(", "i", "=", "1", ";", "i", "<", "nunits", ";", "i", "++", ")", "if", "(", "!", "rtx_equal_p", "(", "first", ",", "CONST_VECTOR_ELT", "(", "op", ",", "i", ")", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "is", "a", "constant", "vector", "with", "the", "number", "of", "units", "in", "MODE", ",", "and", "each", "unit", "has", "the", "same", "value", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_const_vector_same_val_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32905, "Length": 86} {"ground_truth": ["", "bool", "mips_const_vector_shuffle_set_p", "(", "rtx", "op", ",", "machine_mode", "mode", ")", "{", "int", "nunits", "=", "GET_MODE_NUNITS", "(", "mode", ")", ";", "int", "nsets", "=", "nunits", "/", "4", ";", "int", "set", "=", "0", ";", "int", "i", ",", "j", ";", "for", "(", "j", "=", "0", ";", "j", "<", "nsets", ";", "j", "++", ",", "set", "=", "4", "*", "j", ")", "for", "(", "i", "=", "0", ";", "i", "<", "4", ";", "i", "++", ")", "if", "(", "(", "INTVAL", "(", "XVECEXP", "(", "op", ",", "0", ",", "i", ")", ")", "!=", "(", "INTVAL", "(", "XVECEXP", "(", "op", ",", "0", ",", "set", "+", "i", ")", ")", "-", "set", ")", ")", "||", "!", "IN_RANGE", "(", "INTVAL", "(", "XVECEXP", "(", "op", ",", "0", ",", "set", "+", "i", ")", ")", ",", "0", ",", "set", "+", "3", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "is", "a", "constant", "vector", "with", "repeated", "4-element", "sets", "in", "mode", "MODE", "."], "TS_V_token": ["mips", "4", "0", "0", "4", "0", "4", "0", "0", "0", "0", "3"], "File": "mips", "Func": "mips_const_vector_shuffle_set_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32906, "Length": 132} {"ground_truth": ["", "bool", "mips_cprestore_address_p", "(", "rtx", "x", ",", "bool", "load_p", ")", "{", "rtx", "given_base", ",", "required_base", ";", "HOST_WIDE_INT", "given_offset", ",", "required_offset", ";", "mips_split_plus", "(", "x", ",", "&", "given_base", ",", "&", "given_offset", ")", ";", "mips_get_cprestore_base_and_offset", "(", "&", "required_base", ",", "&", "required_offset", ",", "load_p", ")", ";", "return", "given_base", "==", "required_base", "&&", "given_offset", "==", "required_offset", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "the", "load", "or", "store", "address", "of", "the", "cprestore", "slot", ";", "LOAD_P", "says", "which", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cprestore_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32907, "Length": 52} {"ground_truth": ["", "static", "rtx", "mips_cprestore_slot", "(", "rtx", "temp", ",", "bool", "load_p", ")", "{", "rtx", "base", ";", "HOST_WIDE_INT", "offset", ";", "mips_get_cprestore_base_and_offset", "(", "&", "base", ",", "&", "offset", ",", "load_p", ")", ";", "return", "gen_frame_mem", "(", "Pmode", ",", "mips_add_offset", "(", "temp", ",", "base", ",", "offset", ")", ")", ";", "}", ""], "natrual_language": ["Return", "a", "MEM", "rtx", "for", "the", "cprestore", "slot", ".", "LOAD_P", "is", "true", "if", "we", "are", "going", "to", "load", "from", "it", ",", "false", "if", "we", "are", "going", "to", "store", "to", "it", ".", "Use", "TEMP", "as", "a", "temporary", "register", "if", "need", "be", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_cprestore_slot", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32908, "Length": 44} {"ground_truth": ["", "static", "const", "struct", "mips_cpu_info", "*", "mips_cpu_info_from_isa", "(", "int", "isa", ")", "{", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips_cpu_info_table", ")", ";", "i", "++", ")", "if", "(", "mips_cpu_info_table", "[", "i", "]", ".", "isa", "==", "isa", ")", "return", "mips_cpu_info_table", "+", "i", ";", "return", "NULL", ";", "}", ""], "natrual_language": ["Return", "the", "processor", "associated", "with", "the", "given", "ISA", "level", ",", "or", "null", "if", "the", "ISA", "is", "n't", "valid", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_cpu_info_from_isa", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32909, "Length": 51} {"ground_truth": ["", "static", "const", "struct", "mips_cpu_info", "*", "mips_cpu_info_from_opt", "(", "int", "opt", ")", "{", "switch", "(", "opt", ")", "{", "case", "MIPS_ARCH_OPTION_FROM_ABI", ":", "return", "mips_cpu_info_from_isa", "(", "ABI_NEEDS_32BIT_REGS", "?", "1", ":", "ABI_NEEDS_64BIT_REGS", "?", "3", ":", "(", "TARGET_64BIT", "?", "3", ":", "1", ")", ")", ";", "case", "MIPS_ARCH_OPTION_NATIVE", ":", "gcc_unreachable", "(", ")", ";", "default", ":", "return", "&", "mips_cpu_info_table", "[", "opt", "]", ";", "}", "}", ""], "natrual_language": ["Return", "a", "mips_cpu_info", "entry", "determined", "by", "an", "option", "valued", "OPT", "."], "TS_V_token": ["mips", "1", "3", "3", "1"], "File": "mips", "Func": "mips_cpu_info_from_opt", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32910, "Length": 57} {"ground_truth": ["", "enum", "mips_loadgp_style", "mips_current_loadgp_style", "(", "void", ")", "{", "if", "(", "!", "TARGET_USE_GOT", "||", "cfun", "->", "machine", "->", "global_pointer", "==", "INVALID_REGNUM", ")", "return", "LOADGP_NONE", ";", "if", "(", "TARGET_RTP_PIC", ")", "return", "LOADGP_RTP", ";", "if", "(", "TARGET_ABSOLUTE_ABICALLS", ")", "return", "LOADGP_ABSOLUTE", ";", "return", "TARGET_NEWABI", "?", "LOADGP_NEWABI", ":", "LOADGP_OLDABI", ";", "}", ""], "natrual_language": ["Return", "the", "style", "of", "GP", "load", "sequence", "that", "is", "being", "used", "for", "the", "current", "function", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_current_loadgp_style", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32911, "Length": 45} {"ground_truth": ["", "bool", "mips_dangerous_for_la25_p", "(", "rtx", "x", ")", "{", "return", "(", "!", "TARGET_EXPLICIT_RELOCS", "&&", "TARGET_USE_GOT", "&&", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", "&&", "mips_global_symbol_p", "(", "x", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "should", "not", "be", "moved", "directly", "into", "register", "$", "25", ".", "We", "need", "this", "because", "many", "versions", "of", "GAS", "will", "treat", "``", "la", "$", "25", ",", "foo", "''", "as", "part", "of", "a", "call", "sequence", "and", "so", "allow", "a", "global", "``", "foo", "''", "to", "be", "lazily", "bound", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_dangerous_for_la25_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32912, "Length": 28} {"ground_truth": ["", "static", "void", "mips_deallocate_stack", "(", "rtx", "base", ",", "rtx", "offset", ",", "HOST_WIDE_INT", "new_frame_size", ")", "{", "if", "(", "base", "==", "stack_pointer_rtx", "&&", "offset", "==", "const0_rtx", ")", "return", ";", "mips_frame_barrier", "(", ")", ";", "if", "(", "offset", "==", "const0_rtx", ")", "{", "emit_move_insn", "(", "stack_pointer_rtx", ",", "base", ")", ";", "mips_epilogue_set_cfa", "(", "stack_pointer_rtx", ",", "new_frame_size", ")", ";", "}", "else", "if", "(", "TARGET_MIPS16", "&&", "base", "!=", "stack_pointer_rtx", ")", "{", "emit_insn", "(", "gen_add3_insn", "(", "base", ",", "base", ",", "offset", ")", ")", ";", "mips_epilogue_set_cfa", "(", "base", ",", "new_frame_size", ")", ";", "emit_move_insn", "(", "stack_pointer_rtx", ",", "base", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_add3_insn", "(", "stack_pointer_rtx", ",", "base", ",", "offset", ")", ")", ";", "mips_epilogue_set_cfa", "(", "stack_pointer_rtx", ",", "new_frame_size", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "code", "to", "set", "the", "stack", "pointer", "to", "BASE", "+", "OFFSET", ",", "given", "that", "BASE", "+", "OFFSET", "is", "NEW_FRAME_SIZE", "bytes", "below", "the", "top", "of", "the", "frame", ".", "BASE", ",", "if", "not", "the", "stack", "pointer", ",", "is", "available", "as", "a", "temporary", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_deallocate_stack", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32913, "Length": 112} {"ground_truth": ["", "HOST_WIDE_INT", "mips_debugger_offset", "(", "rtx", "addr", ",", "HOST_WIDE_INT", "offset", ")", "{", "rtx", "offset2", "=", "const0_rtx", ";", "rtx", "reg", "=", "eliminate_constant_term", "(", "addr", ",", "&", "offset2", ")", ";", "if", "(", "offset", "==", "0", ")", "offset", "=", "INTVAL", "(", "offset2", ")", ";", "if", "(", "reg", "==", "stack_pointer_rtx", "||", "reg", "==", "frame_pointer_rtx", "||", "reg", "==", "hard_frame_pointer_rtx", ")", "{", "offset", "-=", "cfun", "->", "machine", "->", "frame", ".", "total_size", ";", "if", "(", "reg", "==", "hard_frame_pointer_rtx", ")", "offset", "+=", "cfun", "->", "machine", "->", "frame", ".", "hard_frame_pointer_offset", ";", "}", "return", "offset", ";", "}", ""], "natrual_language": ["The", "MIPS", "debug", "format", "wants", "all", "automatic", "variables", "and", "arguments", "to", "be", "in", "terms", "of", "the", "virtual", "frame", "pointer", "(", "stack", "pointer", "before", "any", "adjustment", "in", "the", "function", ")", ",", "while", "the", "MIPS", "3.0", "linker", "wants", "the", "frame", "pointer", "to", "be", "the", "stack", "pointer", "after", "the", "initial", "adjustment", ".", "So", ",", "we", "do", "the", "adjustment", "here", ".", "The", "arg", "pointer", "(", "which", "is", "eliminated", ")", "points", "to", "the", "virtual", "frame", "pointer", ",", "while", "the", "frame", "pointer", "(", "which", "may", "be", "eliminated", ")", "points", "to", "the", "stack", "pointer", "after", "the", "initial", "adjustments", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_debugger_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32914, "Length": 85} {"ground_truth": ["", "void", "mips_declare_common_object", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ",", "const", "char", "*", "init_string", ",", "unsigned", "HOST_WIDE_INT", "size", ",", "unsigned", "int", "align", ",", "bool", "takes_alignment_p", ")", "{", "if", "(", "!", "takes_alignment_p", ")", "{", "size", "+=", "(", "align", "/", "BITS_PER_UNIT", ")", "-", "1", ";", "size", "-=", "size", "%", "(", "align", "/", "BITS_PER_UNIT", ")", ";", "mips_declare_object", "(", "stream", ",", "name", ",", "init_string", ",", "\",\"", "HOST_WIDE_INT_PRINT_UNSIGNED", "\"\\n\"", ",", "size", ")", ";", "}", "else", "mips_declare_object", "(", "stream", ",", "name", ",", "init_string", ",", "\",\"", "HOST_WIDE_INT_PRINT_UNSIGNED", "\",%u\\n\"", ",", "size", ",", "align", "/", "BITS_PER_UNIT", ")", ";", "}", ""], "natrual_language": ["Declare", "a", "common", "object", "of", "SIZE", "bytes", "using", "asm", "directive", "INIT_STRING", ".", "NAME", "is", "the", "name", "of", "the", "object", "and", "ALIGN", "is", "the", "required", "alignment", "in", "bytes", ".", "TAKES_ALIGNMENT_P", "is", "true", "if", "the", "directive", "takes", "a", "third", "alignment", "argument", "."], "TS_V_token": ["mips", "1", "\",\"", "\"\\n\"", "\",\"", "\",%u\\n\""], "File": "mips", "Func": "mips_declare_common_object", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32915, "Length": 92} {"ground_truth": ["", "void", "mips_declare_object", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ",", "const", "char", "*", "init_string", ",", "const", "char", "*", "final_string", ",", "...", ")", "{", "va_list", "ap", ";", "fputs", "(", "init_string", ",", "stream", ")", ";", "assemble_name", "(", "stream", ",", "name", ")", ";", "va_start", "(", "ap", ",", "final_string", ")", ";", "vfprintf", "(", "stream", ",", "final_string", ",", "ap", ")", ";", "va_end", "(", "ap", ")", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "{", "tree", "name_tree", "=", "get_identifier", "(", "name", ")", ";", "TREE_ASM_WRITTEN", "(", "name_tree", ")", "=", "1", ";", "}", "}", ""], "natrual_language": ["Emit", "either", "a", "label", ",", ".comm", ",", "or", ".lcomm", "directive", ".", "When", "using", "assembler", "macros", ",", "mark", "the", "symbol", "as", "written", "so", "that", "mips_file_end", "wo", "n't", "emit", "an", ".extern", "for", "it", ".", "STREAM", "is", "the", "output", "file", ",", "NAME", "is", "the", "name", "of", "the", "symbol", ",", "INIT_STRING", "is", "the", "string", "that", "should", "be", "written", "before", "the", "symbol", "and", "FINAL_STRING", "is", "the", "string", "that", "should", "be", "written", "after", "it", ".", "FINAL_STRING", "is", "a", "printf", "(", ")", "format", "that", "consumes", "the", "remaining", "arguments", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_declare_object", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32916, "Length": 86} {"ground_truth": ["", "void", "mips_declare_object_name", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ",", "tree", "decl", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "USE_GNU_UNIQUE_OBJECT", "&&", "DECL_ONE_ONLY", "(", "decl", ")", "&&", "(", "!", "DECL_ARTIFICIAL", "(", "decl", ")", "||", "!", "TREE_READONLY", "(", "decl", ")", ")", ")", "ASM_OUTPUT_TYPE_DIRECTIVE", "(", "stream", ",", "name", ",", "\"gnu_unique_object\"", ")", ";", "else", "ASM_OUTPUT_TYPE_DIRECTIVE", "(", "stream", ",", "name", ",", "\"object\"", ")", ";", "size_directive_output", "=", "0", ";", "if", "(", "!", "flag_inhibit_size_directive", "&&", "DECL_SIZE", "(", "decl", ")", ")", "{", "HOST_WIDE_INT", "size", ";", "size_directive_output", "=", "1", ";", "size", "=", "int_size_in_bytes", "(", "TREE_TYPE", "(", "decl", ")", ")", ";", "ASM_OUTPUT_SIZE_DIRECTIVE", "(", "stream", ",", "name", ",", "size", ")", ";", "}", "mips_declare_object", "(", "stream", ",", "name", ",", "\"\"", ",", "\":\\n\"", ")", ";", "}", ""], "natrual_language": ["Implement", "ASM_DECLARE_OBJECT_NAME", ".", "This", "is", "like", "most", "of", "the", "standard", "ELF", "definitions", "except", "that", "it", "uses", "mips_declare_object", "(", ")", "to", "emit", "the", "label", "."], "TS_V_token": ["mips", "\"gnu_unique_object\"", "\"object\"", "0", "1", "\"\"", "\":\\n\""], "File": "mips", "Func": "mips_declare_object_name", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32917, "Length": 113} {"ground_truth": ["", "static", "const", "struct", "mips_cpu_info", "*", "mips_default_arch", "(", "void", ")", "{", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips_cpu_info_table", ")", ";", "i", "++", ")", "if", "(", "strcmp", "(", "mips_cpu_info_table", "[", "i", "]", ".", "name", ",", "MIPS_CPU_STRING_DEFAULT", ")", "==", "0", ")", "return", "mips_cpu_info_table", "+", "i", ";", "gcc_unreachable", "(", ")", ";", "return", "mips_cpu_info_from_isa", "(", "MIPS_ISA_DEFAULT", ")", ";", "return", "mips_cpu_info_from_opt", "(", "MIPS_ARCH_OPTION_FROM_ABI", ")", ";", "}", ""], "natrual_language": ["Return", "a", "default", "mips_cpu_info", "entry", ",", "given", "that", "no", "-march=", "option", "was", "explicitly", "specified", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_default_arch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32918, "Length": 68} {"ground_truth": ["", "static", "void", "mips_dfa_post_advance_cycle", "(", "void", ")", "{", "if", "(", "TUNE_LOONGSON_2EF", ")", "mips_ls2_dfa_post_advance_cycle", "(", "curr_state", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCHED_DFA_POST_ADVANCE_CYCLE", ".", "This", "hook", "is", "being", "called", "at", "the", "start", "of", "each", "cycle", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_dfa_post_advance_cycle", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32919, "Length": 17} {"ground_truth": ["", "static", "void", "mips_df_reorg", "(", "void", ")", "{", "df_set_flags", "(", "DF_EQ_NOTES", ")", ";", "df_chain_add_problem", "(", "DF_UD_CHAIN", ")", ";", "df_analyze", "(", ")", ";", "if", "(", "TARGET_RELAX_PIC_CALLS", ")", "mips_annotate_pic_calls", "(", ")", ";", "if", "(", "mips_r10k_cache_barrier", "!=", "R10K_CACHE_BARRIER_NONE", ")", "r10k_insert_cache_barriers", "(", ")", ";", "df_finish_pass", "(", "false", ")", ";", "}", ""], "natrual_language": ["Subroutine", "of", "mips_reorg", "to", "manage", "passes", "that", "require", "DF", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_df_reorg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32920, "Length": 45} {"ground_truth": ["", "static", "bool", "mips_direct_save_slot_move_p", "(", "unsigned", "int", "regno", ",", "rtx", "mem", ",", "bool", "load_p", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "!", "load_p", "&&", "regno", "==", "RETURN_ADDR_REGNUM", ")", "return", "false", ";", "return", "mips_secondary_reload_class", "(", "REGNO_REG_CLASS", "(", "regno", ")", ",", "GET_MODE", "(", "mem", ")", ",", "mem", ",", "load_p", ")", "==", "NO_REGS", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "move", "between", "register", "REGNO", "and", "its", "save", "slot", "(", "MEM", ")", "can", "be", "done", "in", "a", "single", "move", ".", "LOAD_P", "is", "true", "if", "we", "are", "loading", "from", "the", "slot", ",", "false", "if", "we", "are", "storing", "to", "it", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_direct_save_slot_move_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32921, "Length": 50} {"ground_truth": ["", "static", "machine_mode", "mips_dwarf_frame_reg_mode", "(", "int", "regno", ")", "{", "machine_mode", "mode", "=", "default_dwarf_frame_reg_mode", "(", "regno", ")", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "mips_abi", "==", "ABI_32", "&&", "!", "TARGET_FLOAT32", ")", "mode", "=", "SImode", ";", "return", "mode", ";", "}", ""], "natrual_language": ["Implement", "TARGET_DWARF_FRAME_REG_MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_dwarf_frame_reg_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32922, "Length": 38} {"ground_truth": ["", "static", "rtx", "mips_dwarf_register_span", "(", "rtx", "reg", ")", "{", "rtx", "high", ",", "low", ";", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "reg", ")", ";", "if", "(", "FP_REG_P", "(", "REGNO", "(", "reg", ")", ")", "&&", "TARGET_FLOATXX", "&&", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_FPREG", ")", "{", "return", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec", "(", "1", ",", "reg", ")", ")", ";", "}", "else", "if", "(", "FP_REG_P", "(", "REGNO", "(", "reg", ")", ")", "&&", "TARGET_BIG_ENDIAN", "&&", "MAX_FPRS_PER_FMT", ">", "1", "&&", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_FPREG", ")", "{", "gcc_assert", "(", "GET_MODE_SIZE", "(", "mode", ")", "==", "UNITS_PER_HWFPVALUE", ")", ";", "high", "=", "mips_subword", "(", "reg", ",", "true", ")", ";", "low", "=", "mips_subword", "(", "reg", ",", "false", ")", ";", "return", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec", "(", "2", ",", "high", ",", "low", ")", ")", ";", "}", "return", "NULL_RTX", ";", "}", ""], "natrual_language": ["Implement", "TARGET_DWARF_REGISTER_SPAN", "."], "TS_V_token": ["mips", "1", "1", "2"], "File": "mips", "Func": "mips_dwarf_register_span", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32923, "Length": 130} {"ground_truth": ["", "bool", "mips_eh_uses", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "reload_completed", "&&", "!", "TARGET_ABSOLUTE_JUMPS", ")", "{", "if", "(", "mips_cfun_has_cprestore_slot_p", "(", ")", ")", "{", "if", "(", "regno", "==", "CPRESTORE_SLOT_REGNUM", ")", "return", "true", ";", "}", "else", "{", "if", "(", "cfun", "->", "machine", "->", "global_pointer", "==", "regno", ")", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "EH_USES", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_eh_uses", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32924, "Length": 54} {"ground_truth": ["", "void", "mips_emit_binary", "(", "enum", "rtx_code", "code", ",", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "target", ",", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "target", ")", ",", "op0", ",", "op1", ")", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "an", "instruction", "of", "the", "form", "(", "set", "TARGET", "(", "CODE", "OP0", "OP1", ")", ")", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_binary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32925, "Length": 40} {"ground_truth": ["", "static", "rtx_insn", "*", "mips_emit_call_insn", "(", "rtx", "pattern", ",", "rtx", "orig_addr", ",", "rtx", "addr", ",", "bool", "lazy_p", ")", "{", "rtx_insn", "*", "insn", ";", "rtx", "reg", ";", "insn", "=", "emit_call_insn", "(", "pattern", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "mips_use_pic_fn_addr_reg_p", "(", "orig_addr", ")", ")", "{", "reg", "=", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "emit_insn_before", "(", "gen_move_insn", "(", "reg", ",", "addr", ")", ",", "insn", ")", ";", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "reg", ")", ";", "}", "if", "(", "lazy_p", ")", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "pic_offset_table_rtx", ")", ";", "if", "(", "TARGET_USE_GOT", ")", "{", "use_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "gen_rtx_REG", "(", "Pmode", ",", "GOT_VERSION_REGNUM", ")", ")", ";", "emit_insn", "(", "gen_update_got_version", "(", ")", ")", ";", "}", "if", "(", "TARGET_MIPS16", "&&", "TARGET_EXPLICIT_RELOCS", "&&", "TARGET_CALL_CLOBBERED_GP", ")", "{", "rtx", "post_call_tmp_reg", "=", "gen_rtx_REG", "(", "word_mode", ",", "POST_CALL_TMP_REG", ")", ";", "clobber_reg", "(", "&", "CALL_INSN_FUNCTION_USAGE", "(", "insn", ")", ",", "post_call_tmp_reg", ")", ";", "}", "return", "insn", ";", "}", ""], "natrual_language": ["Emit", "a", "call", "sequence", "with", "call", "pattern", "PATTERN", "and", "return", "the", "call", "instruction", "itself", "(", "which", "is", "not", "necessarily", "the", "last", "instruction", "emitted", ")", ".", "ORIG_ADDR", "is", "the", "original", ",", "unlegitimized", "address", ",", "ADDR", "is", "the", "legitimized", "form", ",", "and", "LAZY_P", "is", "true", "if", "the", "call", "address", "is", "lazily-bound", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_call_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32926, "Length": 154} {"ground_truth": ["", "static", "void", "mips_emit_compare", "(", "enum", "rtx_code", "*", "code", ",", "rtx", "*", "op0", ",", "rtx", "*", "op1", ",", "bool", "need_eq_ne_p", ")", "{", "rtx", "cmp_op0", "=", "*", "op0", ";", "rtx", "cmp_op1", "=", "*", "op1", ";", "if", "(", "GET_MODE_CLASS", "(", "GET_MODE", "(", "*", "op0", ")", ")", "==", "MODE_INT", ")", "{", "if", "(", "!", "need_eq_ne_p", "&&", "*", "op1", "==", "const0_rtx", ")", ";", "else", "if", "(", "*", "code", "==", "EQ", "||", "*", "code", "==", "NE", ")", "{", "if", "(", "need_eq_ne_p", ")", "{", "*", "op0", "=", "mips_zero_if_equal", "(", "cmp_op0", ",", "cmp_op1", ")", ";", "*", "op1", "=", "const0_rtx", ";", "}", "else", "*", "op1", "=", "force_reg", "(", "GET_MODE", "(", "cmp_op0", ")", ",", "cmp_op1", ")", ";", "}", "else", "if", "(", "!", "need_eq_ne_p", "&&", "TARGET_CB_MAYBE", ")", "{", "bool", "swap", "=", "false", ";", "switch", "(", "*", "code", ")", "{", "case", "LE", ":", "swap", "=", "true", ";", "*", "code", "=", "GE", ";", "break", ";", "case", "GT", ":", "swap", "=", "true", ";", "*", "code", "=", "LT", ";", "break", ";", "case", "LEU", ":", "swap", "=", "true", ";", "*", "code", "=", "GEU", ";", "break", ";", "case", "GTU", ":", "swap", "=", "true", ";", "*", "code", "=", "LTU", ";", "break", ";", "case", "GE", ":", "case", "LT", ":", "case", "GEU", ":", "case", "LTU", ":", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "*", "op1", "=", "force_reg", "(", "GET_MODE", "(", "cmp_op0", ")", ",", "cmp_op1", ")", ";", "if", "(", "swap", ")", "{", "rtx", "tmp", "=", "*", "op1", ";", "*", "op1", "=", "*", "op0", ";", "*", "op0", "=", "tmp", ";", "}", "}", "else", "{", "bool", "invert", "=", "false", ";", "*", "op0", "=", "gen_reg_rtx", "(", "GET_MODE", "(", "cmp_op0", ")", ")", ";", "mips_emit_int_order_test", "(", "*", "code", ",", "&", "invert", ",", "*", "op0", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "*", "code", "=", "(", "invert", "?", "EQ", ":", "NE", ")", ";", "*", "op1", "=", "const0_rtx", ";", "}", "}", "else", "if", "(", "ALL_FIXED_POINT_MODE_P", "(", "GET_MODE", "(", "cmp_op0", ")", ")", ")", "{", "*", "op0", "=", "gen_rtx_REG", "(", "CCDSPmode", ",", "CCDSP_CC_REGNUM", ")", ";", "mips_emit_binary", "(", "*", "code", ",", "*", "op0", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "*", "code", "=", "NE", ";", "*", "op1", "=", "const0_rtx", ";", "}", "else", "{", "enum", "rtx_code", "cmp_code", ";", "cmp_code", "=", "*", "code", ";", "if", "(", "ISA_HAS_CCF", ")", "{", "*", "code", "=", "NE", ";", "*", "op0", "=", "gen_reg_rtx", "(", "CCFmode", ")", ";", "}", "else", "{", "*", "code", "=", "mips_reversed_fp_cond", "(", "&", "cmp_code", ")", "?", "EQ", ":", "NE", ";", "if", "(", "ISA_HAS_8CC", ")", "*", "op0", "=", "mips_allocate_fcc", "(", "CCmode", ")", ";", "else", "*", "op0", "=", "gen_rtx_REG", "(", "CCmode", ",", "FPSW_REGNUM", ")", ";", "}", "*", "op1", "=", "const0_rtx", ";", "mips_emit_binary", "(", "cmp_code", ",", "*", "op0", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "}", "}", ""], "natrual_language": ["Convert", "a", "comparison", "into", "something", "that", "can", "be", "used", "in", "a", "branch", "or", "conditional", "move", ".", "On", "entry", ",", "*", "OP0", "and", "*", "OP1", "are", "the", "values", "being", "compared", "and", "*", "CODE", "is", "the", "code", "used", "to", "compare", "them", ".", "Update", "*", "CODE", ",", "*", "OP0", "and", "*", "OP1", "so", "that", "they", "describe", "the", "final", "comparison", ".", "If", "NEED_EQ_NE_P", ",", "then", "only", "EQ", "or", "NE", "comparisons", "against", "zero", "are", "possible", ",", "otherwise", "any", "standard", "branch", "condition", "can", "be", "used", ".", "The", "standard", "branch", "conditions", "are", ":", "-", "EQ", "or", "NE", "between", "two", "registers", ".", "-", "any", "comparison", "between", "a", "register", "and", "zero", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_compare", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32927, "Length": 428} {"ground_truth": ["", "static", "void", "mips_emit_int_order_test", "(", "enum", "rtx_code", "code", ",", "bool", "*", "invert_ptr", ",", "rtx", "target", ",", "rtx", "cmp0", ",", "rtx", "cmp1", ")", "{", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "cmp0", ")", ";", "if", "(", "mips_canonicalize_int_order_test", "(", "&", "code", ",", "&", "cmp1", ",", "mode", ")", ")", "mips_emit_binary", "(", "code", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "else", "{", "enum", "rtx_code", "inv_code", "=", "reverse_condition", "(", "code", ")", ";", "if", "(", "!", "mips_canonicalize_int_order_test", "(", "&", "inv_code", ",", "&", "cmp1", ",", "mode", ")", ")", "{", "cmp1", "=", "force_reg", "(", "mode", ",", "cmp1", ")", ";", "mips_emit_int_order_test", "(", "code", ",", "invert_ptr", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "}", "else", "if", "(", "invert_ptr", "==", "0", ")", "{", "rtx", "inv_target", ";", "inv_target", "=", "mips_force_binary", "(", "GET_MODE", "(", "target", ")", ",", "inv_code", ",", "cmp0", ",", "cmp1", ")", ";", "mips_emit_binary", "(", "XOR", ",", "target", ",", "inv_target", ",", "const1_rtx", ")", ";", "}", "else", "{", "*", "invert_ptr", "=", "!", "*", "invert_ptr", ";", "mips_emit_binary", "(", "inv_code", ",", "target", ",", "cmp0", ",", "cmp1", ")", ";", "}", "}", "}", ""], "natrual_language": ["Compare", "CMP0", "and", "CMP1", "using", "ordering", "test", "CODE", "and", "store", "the", "result", "in", "TARGET", ".", "CMP0", "and", "TARGET", "are", "register_operands", ".", "If", "INVERT_PTR", "is", "nonnull", ",", "it", "'s", "OK", "to", "set", "TARGET", "to", "the", "inverse", "of", "the", "result", "and", "flip", "*", "INVERT_PTR", "instead", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_emit_int_order_test", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32928, "Length": 167} {"ground_truth": ["", "static", "void", "mips_emit_loadgp", "(", "void", ")", "{", "rtx", "addr", ",", "offset", ",", "incoming_address", ",", "base", ",", "index", ",", "pic_reg", ";", "pic_reg", "=", "TARGET_MIPS16", "?", "MIPS16_PIC_TEMP", ":", "pic_offset_table_rtx", ";", "switch", "(", "mips_current_loadgp_style", "(", ")", ")", "{", "case", "LOADGP_ABSOLUTE", ":", "if", "(", "mips_gnu_local_gp", "==", "NULL", ")", "{", "mips_gnu_local_gp", "=", "gen_rtx_SYMBOL_REF", "(", "Pmode", ",", "\"__gnu_local_gp\"", ")", ";", "SYMBOL_REF_FLAGS", "(", "mips_gnu_local_gp", ")", "|=", "SYMBOL_FLAG_LOCAL", ";", "}", "emit_insn", "(", "PMODE_INSN", "(", "gen_loadgp_absolute", ",", "(", "pic_reg", ",", "mips_gnu_local_gp", ")", ")", ")", ";", "break", ";", "case", "LOADGP_OLDABI", ":", "break", ";", "case", "LOADGP_NEWABI", ":", "addr", "=", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ";", "offset", "=", "mips_unspec_address", "(", "addr", ",", "SYMBOL_GOTOFF_LOADGP", ")", ";", "incoming_address", "=", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_loadgp_newabi", ",", "(", "pic_reg", ",", "offset", ",", "incoming_address", ")", ")", ")", ";", "break", ";", "case", "LOADGP_RTP", ":", "base", "=", "gen_rtx_SYMBOL_REF", "(", "Pmode", ",", "ggc_strdup", "(", "VXWORKS_GOTT_BASE", ")", ")", ";", "index", "=", "gen_rtx_SYMBOL_REF", "(", "Pmode", ",", "ggc_strdup", "(", "VXWORKS_GOTT_INDEX", ")", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_loadgp_rtp", ",", "(", "pic_reg", ",", "base", ",", "index", ")", ")", ")", ";", "break", ";", "default", ":", "return", ";", "}", "if", "(", "TARGET_MIPS16", ")", "emit_insn", "(", "PMODE_INSN", "(", "gen_copygp_mips16", ",", "(", "pic_offset_table_rtx", ",", "pic_reg", ")", ")", ")", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", "||", "crtl", "->", "profile", ")", "emit_insn", "(", "gen_loadgp_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["If", "we", "'re", "generating", "n32", "or", "n64", "abicalls", ",", "emit", "instructions", "to", "set", "up", "the", "global", "pointer", "."], "TS_V_token": ["mips", "\"__gnu_local_gp\"", "0"], "File": "mips", "Func": "mips_emit_loadgp", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32929, "Length": 219} {"ground_truth": ["", "rtx_insn", "*", "mips_emit_move", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "return", "(", "can_create_pseudo_p", "(", ")", "?", "emit_move_insn", "(", "dest", ",", "src", ")", ":", "emit_move_insn_1", "(", "dest", ",", "src", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "a", "move", "from", "SRC", "to", "DEST", ".", "Assume", "that", "the", "move", "expanders", "can", "handle", "all", "moves", "if", "!", "can_create_pseudo_p", "(", ")", ".", "The", "distinction", "is", "important", "because", ",", "unlike", "emit_move_insn", ",", "the", "move", "expanders", "know", "how", "to", "force", "Pmode", "objects", "into", "the", "constant", "pool", "even", "when", "the", "constant", "pool", "address", "is", "not", "itself", "legitimate", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32930, "Length": 33} {"ground_truth": ["", "static", "void", "mips_emit_move_or_split", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "if", "(", "mips_split_move_p", "(", "dest", ",", "src", ",", "split_type", ")", ")", "mips_split_move", "(", "dest", ",", "src", ",", "split_type", ",", "NULL", ")", ";", "else", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "}", ""], "natrual_language": ["Emit", "a", "move", "from", "SRC", "to", "DEST", ",", "splitting", "compound", "moves", "into", "individual", "instructions", ".", "SPLIT_TYPE", "is", "the", "type", "of", "split", "to", "perform", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_move_or_split", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32931, "Length": 46} {"ground_truth": ["", "static", "void", "mips_emit_probe_stack_range", "(", "HOST_WIDE_INT", "first", ",", "HOST_WIDE_INT", "size", ")", "{", "if", "(", "TARGET_MIPS16", ")", "sorry", "(", "\"%<-fstack-check=specific%> not implemented for MIPS16\"", ")", ";", "if", "(", "first", "+", "size", "<=", "32768", ")", "{", "HOST_WIDE_INT", "i", ";", "for", "(", "i", "=", "PROBE_INTERVAL", ";", "i", "<", "size", ";", "i", "+=", "PROBE_INTERVAL", ")", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "(", "first", "+", "i", ")", ")", ")", ";", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "(", "first", "+", "size", ")", ")", ")", ";", "}", "else", "{", "HOST_WIDE_INT", "rounded_size", ";", "rtx", "r3", "=", "MIPS_PROLOGUE_TEMP", "(", "Pmode", ")", ";", "rtx", "r12", "=", "MIPS_PROLOGUE_TEMP2", "(", "Pmode", ")", ";", "gcc_assert", "(", "first", "<=", "32768", ")", ";", "rounded_size", "=", "ROUND_DOWN", "(", "size", ",", "PROBE_INTERVAL", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "r3", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "-", "first", ")", ")", ")", ";", "if", "(", "rounded_size", ">", "32768", ")", "{", "emit_move_insn", "(", "r12", ",", "GEN_INT", "(", "rounded_size", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "r12", ",", "gen_rtx_MINUS", "(", "Pmode", ",", "r3", ",", "r12", ")", ")", ")", ";", "}", "else", "emit_insn", "(", "gen_rtx_SET", "(", "r12", ",", "plus_constant", "(", "Pmode", ",", "r3", ",", "-", "rounded_size", ")", ")", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_probe_stack_range", ",", "(", "r3", ",", "r3", ",", "r12", ")", ")", ")", ";", "if", "(", "size", "!=", "rounded_size", ")", "emit_stack_probe", "(", "plus_constant", "(", "Pmode", ",", "r12", ",", "rounded_size", "-", "size", ")", ")", ";", "}", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "code", "to", "probe", "a", "range", "of", "stack", "addresses", "from", "FIRST", "to", "FIRST+SIZE", ",", "inclusive", ".", "These", "are", "offsets", "from", "the", "current", "stack", "pointer", "."], "TS_V_token": ["mips", "\"%<-fstack-check=specific%> not implemented for MIPS16\"", "32768", "32768", "32768"], "File": "mips", "Func": "mips_emit_probe_stack_range", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32932, "Length": 235} {"ground_truth": ["", "void", "mips_emit_save_slot_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "temp", ")", "{", "unsigned", "int", "regno", ";", "rtx", "mem", ";", "if", "(", "REG_P", "(", "src", ")", ")", "{", "regno", "=", "REGNO", "(", "src", ")", ";", "mem", "=", "dest", ";", "}", "else", "{", "regno", "=", "REGNO", "(", "dest", ")", ";", "mem", "=", "src", ";", "}", "if", "(", "regno", "==", "cfun", "->", "machine", "->", "global_pointer", "&&", "!", "mips_must_initialize_gp_p", "(", ")", ")", "{", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_move_gpdi", "(", "dest", ",", "src", ")", ")", ";", "else", "emit_insn", "(", "gen_move_gpsi", "(", "dest", ",", "src", ")", ")", ";", "return", ";", "}", "if", "(", "regno", "==", "HI_REGNUM", ")", "{", "if", "(", "REG_P", "(", "dest", ")", ")", "{", "mips_emit_move", "(", "temp", ",", "src", ")", ";", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mthidi_ti", "(", "gen_rtx_REG", "(", "TImode", ",", "MD_REG_FIRST", ")", ",", "temp", ",", "gen_rtx_REG", "(", "DImode", ",", "LO_REGNUM", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_mthisi_di", "(", "gen_rtx_REG", "(", "DImode", ",", "MD_REG_FIRST", ")", ",", "temp", ",", "gen_rtx_REG", "(", "SImode", ",", "LO_REGNUM", ")", ")", ")", ";", "}", "else", "{", "if", "(", "TARGET_64BIT", ")", "emit_insn", "(", "gen_mfhidi_ti", "(", "temp", ",", "gen_rtx_REG", "(", "TImode", ",", "MD_REG_FIRST", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_mfhisi_di", "(", "temp", ",", "gen_rtx_REG", "(", "DImode", ",", "MD_REG_FIRST", ")", ")", ")", ";", "mips_emit_move", "(", "dest", ",", "temp", ")", ";", "}", "}", "else", "if", "(", "mips_direct_save_slot_move_p", "(", "regno", ",", "mem", ",", "mem", "==", "src", ")", ")", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "else", "{", "gcc_assert", "(", "!", "reg_overlap_mentioned_p", "(", "dest", ",", "temp", ")", ")", ";", "mips_emit_move", "(", "temp", ",", "src", ")", ";", "mips_emit_move", "(", "dest", ",", "temp", ")", ";", "}", "if", "(", "MEM_P", "(", "dest", ")", ")", "mips_set_frame_expr", "(", "mips_frame_set", "(", "dest", ",", "src", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "a", "move", "from", "SRC", "to", "DEST", ",", "given", "that", "one", "of", "them", "is", "a", "register", "save", "slot", "and", "that", "the", "other", "is", "a", "register", ".", "TEMP", "is", "a", "temporary", "GPR", "of", "the", "same", "mode", "that", "is", "available", "if", "need", "be", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_save_slot_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32933, "Length": 283} {"ground_truth": ["", "static", "void", "mips_emit_unary", "(", "enum", "rtx_code", "code", ",", "rtx", "target", ",", "rtx", "op0", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "target", ",", "gen_rtx_fmt_e", "(", "code", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ")", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "an", "instruction", "of", "the", "form", "(", "set", "TARGET", "(", "CODE", "OP0", ")", ")", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_emit_unary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32934, "Length": 36} {"ground_truth": ["", "static", "void", "mips_encode_section_info", "(", "tree", "decl", ",", "rtx", "rtl", ",", "int", "first", ")", "{", "default_encode_section_info", "(", "decl", ",", "rtl", ",", "first", ")", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "==", "FUNCTION_DECL", ")", "{", "rtx", "symbol", "=", "XEXP", "(", "rtl", ",", "0", ")", ";", "tree", "type", "=", "TREE_TYPE", "(", "decl", ")", ";", "if", "(", "(", "TARGET_LONG_CALLS", "&&", "!", "mips_near_type_p", "(", "type", ")", ")", "||", "mips_far_type_p", "(", "type", ")", ")", "SYMBOL_REF_FLAGS", "(", "symbol", ")", "|=", "SYMBOL_FLAG_LONG_CALL", ";", "}", "}", ""], "natrual_language": ["Set", "SYMBOL_REF_FLAGS", "for", "the", "SYMBOL_REF", "inside", "RTL", ",", "which", "belongs", "to", "DECL", ".", "FIRST", "is", "true", "if", "this", "is", "the", "first", "time", "handling", "this", "decl", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_encode_section_info", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32935, "Length": 77} {"ground_truth": ["", "static", "void", "mips_end_function_definition", "(", "const", "char", "*", "name", ")", "{", "if", "(", "!", "flag_inhibit_size_directive", ")", "{", "fputs", "(", "\"\\t.end\\t\"", ",", "asm_out_file", ")", ";", "assemble_name", "(", "asm_out_file", ",", "name", ")", ";", "fputs", "(", "\"\\n\"", ",", "asm_out_file", ")", ";", "}", "}", ""], "natrual_language": ["End", "a", "function", "definition", "started", "by", "mips_start_function_definition", "."], "TS_V_token": ["mips", "\"\\t.end\\t\"", "\"\\n\""], "File": "mips", "Func": "mips_end_function_definition", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32936, "Length": 39} {"ground_truth": ["", "static", "void", "mips_end_ll_sc_sync_block", "(", "void", ")", "{", "if", "(", "!", "ISA_HAS_LL_SC", ")", "output_asm_insn", "(", "\".set\\tpop\"", ",", "0", ")", ";", "}", ""], "natrual_language": ["End", "a", "block", "started", "by", "mips_start_ll_sc_sync_block", "."], "TS_V_token": ["mips", "\".set\\tpop\"", "0"], "File": "mips", "Func": "mips_end_ll_sc_sync_block", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32937, "Length": 20} {"ground_truth": ["", "static", "rtx_insn", "*", "mips_epilogue_emit_cfa_restores", "(", "void", ")", "{", "rtx_insn", "*", "insn", ";", "insn", "=", "get_last_insn", "(", ")", ";", "if", "(", "mips_epilogue", ".", "cfa_restores", ")", "{", "gcc_assert", "(", "insn", "&&", "!", "REG_NOTES", "(", "insn", ")", ")", ";", "RTX_FRAME_RELATED_P", "(", "insn", ")", "=", "1", ";", "REG_NOTES", "(", "insn", ")", "=", "mips_epilogue", ".", "cfa_restores", ";", "mips_epilogue", ".", "cfa_restores", "=", "0", ";", "}", "return", "insn", ";", "}", ""], "natrual_language": ["Attach", "all", "pending", "register", "saves", "to", "the", "previous", "instruction", ".", "Return", "that", "instruction", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips", "Func": "mips_epilogue_emit_cfa_restores", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32938, "Length": 63} {"ground_truth": ["", "static", "void", "mips_epilogue_set_cfa", "(", "rtx", "reg", ",", "HOST_WIDE_INT", "offset", ")", "{", "rtx_insn", "*", "insn", ";", "insn", "=", "mips_epilogue_emit_cfa_restores", "(", ")", ";", "if", "(", "reg", "!=", "mips_epilogue", ".", "cfa_reg", "||", "offset", "!=", "mips_epilogue", ".", "cfa_offset", ")", "{", "RTX_FRAME_RELATED_P", "(", "insn", ")", "=", "1", ";", "REG_NOTES", "(", "insn", ")", "=", "alloc_reg_note", "(", "REG_CFA_DEF_CFA", ",", "plus_constant", "(", "Pmode", ",", "reg", ",", "offset", ")", ",", "REG_NOTES", "(", "insn", ")", ")", ";", "mips_epilogue", ".", "cfa_reg", "=", "reg", ";", "mips_epilogue", ".", "cfa_offset", "=", "offset", ";", "}", "}", ""], "natrual_language": ["Like", "mips_epilogue_emit_cfa_restores", ",", "but", "also", "record", "that", "the", "CFA", "is", "now", "at", "REG", "+", "OFFSET", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_epilogue_set_cfa", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32939, "Length": 81} {"ground_truth": ["", "bool", "mips_epilogue_uses", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "regno", "==", "RETURN_ADDR_REGNUM", ")", "return", "true", ";", "if", "(", "TARGET_USE_GOT", "&&", "(", "regno", ")", "==", "GOT_VERSION_REGNUM", ")", "return", "true", ";", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", "&&", "mips_interrupt_extra_call_saved_reg_p", "(", "regno", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "EPILOGUE_USES", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_epilogue_uses", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32940, "Length": 50} {"ground_truth": ["", "void", "mips_expand_atomic_qihi", "(", "union", "mips_gen_fn_ptrs", "generator", ",", "rtx", "result", ",", "rtx", "mem", ",", "rtx", "oldval", ",", "rtx", "newval", ")", "{", "rtx", "orig_addr", ",", "memsi_addr", ",", "memsi", ",", "shift", ",", "shiftsi", ",", "unshifted_mask", ";", "rtx", "unshifted_mask_reg", ",", "mask", ",", "inverted_mask", ",", "si_op", ";", "rtx", "res", "=", "NULL", ";", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "mem", ")", ";", "orig_addr", "=", "force_reg", "(", "Pmode", ",", "XEXP", "(", "mem", ",", "0", ")", ")", ";", "memsi_addr", "=", "mips_force_binary", "(", "Pmode", ",", "AND", ",", "orig_addr", ",", "force_reg", "(", "Pmode", ",", "GEN_INT", "(", "-", "4", ")", ")", ")", ";", "memsi", "=", "gen_rtx_MEM", "(", "SImode", ",", "memsi_addr", ")", ";", "set_mem_alias_set", "(", "memsi", ",", "ALIAS_SET_MEMORY_BARRIER", ")", ";", "MEM_VOLATILE_P", "(", "memsi", ")", "=", "MEM_VOLATILE_P", "(", "mem", ")", ";", "shift", "=", "mips_force_binary", "(", "Pmode", ",", "AND", ",", "orig_addr", ",", "GEN_INT", "(", "3", ")", ")", ";", "if", "(", "TARGET_BIG_ENDIAN", ")", "mips_emit_binary", "(", "XOR", ",", "shift", ",", "shift", ",", "GEN_INT", "(", "mode", "==", "QImode", "?", "3", ":", "2", ")", ")", ";", "mips_emit_binary", "(", "ASHIFT", ",", "shift", ",", "shift", ",", "GEN_INT", "(", "3", ")", ")", ";", "shiftsi", "=", "force_reg", "(", "SImode", ",", "gen_lowpart", "(", "SImode", ",", "shift", ")", ")", ";", "unshifted_mask", "=", "GEN_INT", "(", "GET_MODE_MASK", "(", "mode", ")", ")", ";", "unshifted_mask_reg", "=", "force_reg", "(", "SImode", ",", "unshifted_mask", ")", ";", "mask", "=", "mips_force_binary", "(", "SImode", ",", "ASHIFT", ",", "unshifted_mask_reg", ",", "shiftsi", ")", ";", "inverted_mask", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "inverted_mask", ",", "gen_rtx_NOT", "(", "SImode", ",", "mask", ")", ")", ")", ";", "if", "(", "oldval", "!=", "const0_rtx", ")", "{", "oldval", "=", "convert_modes", "(", "SImode", ",", "mode", ",", "oldval", ",", "true", ")", ";", "oldval", "=", "force_reg", "(", "SImode", ",", "oldval", ")", ";", "oldval", "=", "mips_force_binary", "(", "SImode", ",", "ASHIFT", ",", "oldval", ",", "shiftsi", ")", ";", "}", "if", "(", "newval", "&&", "newval", "!=", "const0_rtx", ")", "{", "newval", "=", "convert_modes", "(", "SImode", ",", "mode", ",", "newval", ",", "true", ")", ";", "newval", "=", "force_reg", "(", "SImode", ",", "newval", ")", ";", "newval", "=", "mips_force_binary", "(", "SImode", ",", "ASHIFT", ",", "newval", ",", "shiftsi", ")", ";", "}", "if", "(", "result", ")", "res", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "if", "(", "newval", ")", "si_op", "=", "generator", ".", "fn_6", "(", "res", ",", "memsi", ",", "mask", ",", "inverted_mask", ",", "oldval", ",", "newval", ")", ";", "else", "if", "(", "result", ")", "si_op", "=", "generator", ".", "fn_5", "(", "res", ",", "memsi", ",", "mask", ",", "inverted_mask", ",", "oldval", ")", ";", "else", "si_op", "=", "generator", ".", "fn_4", "(", "memsi", ",", "mask", ",", "inverted_mask", ",", "oldval", ")", ";", "emit_insn", "(", "si_op", ")", ";", "if", "(", "result", ")", "{", "mips_emit_binary", "(", "AND", ",", "res", ",", "res", ",", "mask", ")", ";", "mips_emit_binary", "(", "LSHIFTRT", ",", "res", ",", "res", ",", "shiftsi", ")", ";", "mips_emit_move", "(", "result", ",", "gen_lowpart", "(", "GET_MODE", "(", "result", ")", ",", "res", ")", ")", ";", "}", "}", ""], "natrual_language": ["Expand", "a", "QI", "or", "HI", "mode", "atomic", "memory", "operation", ".", "GENERATOR", "contains", "a", "pointer", "to", "the", "gen_", "*", "function", "that", "generates", "the", "SI", "mode", "underlying", "atomic", "operation", "using", "masks", "that", "we", "calculate", ".", "RESULT", "is", "the", "return", "register", "for", "the", "operation", ".", "Its", "value", "is", "NULL", "if", "unused", ".", "MEM", "is", "the", "location", "of", "the", "atomic", "access", ".", "OLDVAL", "is", "the", "first", "operand", "for", "the", "operation", ".", "NEWVAL", "is", "the", "optional", "second", "operand", "for", "the", "operation", ".", "Its", "value", "is", "NULL", "if", "unused", "."], "TS_V_token": ["mips", "0", "4", "3", "3", "2", "3"], "File": "mips", "Func": "mips_expand_atomic_qihi", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32941, "Length": 450} {"ground_truth": ["", "void", "mips_expand_before_return", "(", "void", ")", "{", "if", "(", "TARGET_CALL_CLOBBERED_GP", ")", "emit_clobber", "(", "pic_offset_table_rtx", ")", ";", "}", ""], "natrual_language": ["Emit", "any", "instructions", "needed", "before", "a", "return", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_before_return", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32942, "Length": 16} {"ground_truth": ["", "bool", "mips_expand_block_move", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "length", ")", "{", "if", "(", "!", "ISA_HAS_LWL_LWR", "&&", "(", "MEM_ALIGN", "(", "src", ")", "<", "MIPS_MIN_MOVE_MEM_ALIGN", "||", "MEM_ALIGN", "(", "dest", ")", "<", "MIPS_MIN_MOVE_MEM_ALIGN", ")", ")", "return", "false", ";", "if", "(", "CONST_INT_P", "(", "length", ")", ")", "{", "if", "(", "INTVAL", "(", "length", ")", "<=", "MIPS_MAX_MOVE_BYTES_STRAIGHT", ")", "{", "mips_block_move_straight", "(", "dest", ",", "src", ",", "INTVAL", "(", "length", ")", ")", ";", "return", "true", ";", "}", "else", "if", "(", "optimize", ")", "{", "mips_block_move_loop", "(", "dest", ",", "src", ",", "INTVAL", "(", "length", ")", ",", "MIPS_MAX_MOVE_BYTES_PER_LOOP_ITER", ")", ";", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Expand", "a", "movmemsi", "instruction", ",", "which", "copies", "LENGTH", "bytes", "from", "memory", "reference", "SRC", "to", "memory", "reference", "DEST", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_block_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32943, "Length": 100} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin", "(", "tree", "exp", ",", "rtx", "target", ",", "rtx", "subtarget", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ",", "int", "ignore", ")", "{", "tree", "fndecl", ";", "unsigned", "int", "fcode", ",", "avail", ";", "const", "struct", "mips_builtin_description", "*", "d", ";", "fndecl", "=", "TREE_OPERAND", "(", "CALL_EXPR_FN", "(", "exp", ")", ",", "0", ")", ";", "fcode", "=", "DECL_MD_FUNCTION_CODE", "(", "fndecl", ")", ";", "gcc_assert", "(", "fcode", "<", "ARRAY_SIZE", "(", "mips_builtins", ")", ")", ";", "d", "=", "&", "mips_builtins", "[", "fcode", "]", ";", "avail", "=", "d", "->", "avail", "(", ")", ";", "gcc_assert", "(", "avail", "!=", "0", ")", ";", "if", "(", "TARGET_MIPS16", "&&", "!", "(", "avail", "&", "BUILTIN_AVAIL_MIPS16", ")", ")", "{", "error", "(", "\"built-in function %qE not supported for MIPS16\"", ",", "DECL_NAME", "(", "fndecl", ")", ")", ";", "return", "ignore", "?", "const0_rtx", ":", "CONST0_RTX", "(", "mode", ")", ";", "}", "switch", "(", "d", "->", "builtin_type", ")", "{", "case", "MIPS_BUILTIN_DIRECT", ":", "return", "mips_expand_builtin_direct", "(", "d", "->", "icode", ",", "target", ",", "exp", ",", "true", ")", ";", "case", "MIPS_BUILTIN_DIRECT_NO_TARGET", ":", "return", "mips_expand_builtin_direct", "(", "d", "->", "icode", ",", "target", ",", "exp", ",", "false", ")", ";", "case", "MIPS_BUILTIN_MOVT", ":", "case", "MIPS_BUILTIN_MOVF", ":", "return", "mips_expand_builtin_movtf", "(", "d", "->", "builtin_type", ",", "d", "->", "icode", ",", "d", "->", "cond", ",", "target", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_CMP_ANY", ":", "case", "MIPS_BUILTIN_CMP_ALL", ":", "case", "MIPS_BUILTIN_CMP_UPPER", ":", "case", "MIPS_BUILTIN_CMP_LOWER", ":", "case", "MIPS_BUILTIN_CMP_SINGLE", ":", "return", "mips_expand_builtin_compare", "(", "d", "->", "builtin_type", ",", "d", "->", "icode", ",", "d", "->", "cond", ",", "target", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_MSA_TEST_BRANCH", ":", "return", "mips_expand_builtin_msa_test_branch", "(", "d", "->", "icode", ",", "exp", ")", ";", "case", "MIPS_BUILTIN_BPOSGE32", ":", "return", "mips_expand_builtin_bposge", "(", "d", "->", "builtin_type", ",", "target", ")", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Expand", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_EXPAND_BUILTIN", "."], "TS_V_token": ["mips", "0", "0", "\"built-in function %qE not supported for MIPS16\""], "File": "mips", "Func": "mips_expand_builtin", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32944, "Length": 255} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_bposge", "(", "enum", "mips_builtin_type", "builtin_type", ",", "rtx", "target", ")", "{", "rtx", "condition", ",", "cmp_result", ";", "int", "cmp_value", ";", "if", "(", "target", "==", "0", "||", "GET_MODE", "(", "target", ")", "!=", "SImode", ")", "target", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "cmp_result", "=", "gen_rtx_REG", "(", "CCDSPmode", ",", "CCDSP_PO_REGNUM", ")", ";", "if", "(", "builtin_type", "==", "MIPS_BUILTIN_BPOSGE32", ")", "cmp_value", "=", "32", ";", "else", "gcc_assert", "(", "0", ")", ";", "condition", "=", "gen_rtx_GE", "(", "VOIDmode", ",", "cmp_result", ",", "GEN_INT", "(", "cmp_value", ")", ")", ";", "return", "mips_builtin_branch_and_move", "(", "condition", ",", "target", ",", "const1_rtx", ",", "const0_rtx", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "bposge", "builtin", "of", "type", "BUILTIN_TYPE", ".", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "boolean", "result", ".", "The", "sequence", "we", "want", "is", "li", "target", ",", "0", "bposge", "*", "label1", "j", "label2", "label1", ":", "li", "target", ",", "1", "label2", ":"], "TS_V_token": ["mips", "0", "32", "0"], "File": "mips", "Func": "mips_expand_builtin_bposge", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32945, "Length": 92} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_compare", "(", "enum", "mips_builtin_type", "builtin_type", ",", "enum", "insn_code", "icode", ",", "enum", "mips_fp_condition", "cond", ",", "rtx", "target", ",", "tree", "exp", ")", "{", "rtx", "offset", ",", "condition", ",", "cmp_result", ";", "if", "(", "target", "==", "0", "||", "GET_MODE", "(", "target", ")", "!=", "SImode", ")", "target", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "cmp_result", "=", "mips_expand_builtin_compare_1", "(", "icode", ",", "cond", ",", "exp", ",", "call_expr_nargs", "(", "exp", ")", ")", ";", "switch", "(", "builtin_type", ")", "{", "case", "MIPS_BUILTIN_CMP_ALL", ":", "condition", "=", "gen_rtx_NE", "(", "VOIDmode", ",", "cmp_result", ",", "constm1_rtx", ")", ";", "return", "mips_builtin_branch_and_move", "(", "condition", ",", "target", ",", "const0_rtx", ",", "const1_rtx", ")", ";", "case", "MIPS_BUILTIN_CMP_UPPER", ":", "case", "MIPS_BUILTIN_CMP_LOWER", ":", "offset", "=", "GEN_INT", "(", "builtin_type", "==", "MIPS_BUILTIN_CMP_UPPER", ")", ";", "condition", "=", "gen_single_cc", "(", "cmp_result", ",", "offset", ")", ";", "return", "mips_builtin_branch_and_move", "(", "condition", ",", "target", ",", "const1_rtx", ",", "const0_rtx", ")", ";", "default", ":", "condition", "=", "gen_rtx_NE", "(", "VOIDmode", ",", "cmp_result", ",", "const0_rtx", ")", ";", "return", "mips_builtin_branch_and_move", "(", "condition", ",", "target", ",", "const1_rtx", ",", "const0_rtx", ")", ";", "}", "}", ""], "natrual_language": ["Expand", "a", "comparison", "builtin", "of", "type", "BUILTIN_TYPE", ".", "ICODE", "is", "the", "code", "of", "the", "comparison", "instruction", "and", "COND", "is", "the", "condition", "it", "should", "test", ".", "ARGLIST", "is", "the", "list", "of", "function", "arguments", "and", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "boolean", "result", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_expand_builtin_compare", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32946, "Length": 160} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_compare_1", "(", "enum", "insn_code", "icode", ",", "enum", "mips_fp_condition", "cond", ",", "tree", "exp", ",", "int", "nargs", ")", "{", "struct", "expand_operand", "ops", "[", "MAX_RECOG_OPERANDS", "]", ";", "rtx", "output", ";", "int", "opno", ",", "argno", ";", "gcc_assert", "(", "nargs", "+", "2", "==", "insn_data", "[", "(", "int", ")", "icode", "]", ".", "n_generator_args", ")", ";", "output", "=", "mips_allocate_fcc", "(", "insn_data", "[", "(", "int", ")", "icode", "]", ".", "operand", "[", "0", "]", ".", "mode", ")", ";", "opno", "=", "0", ";", "create_fixed_operand", "(", "&", "ops", "[", "opno", "++", "]", ",", "output", ")", ";", "for", "(", "argno", "=", "0", ";", "argno", "<", "nargs", ";", "argno", "++", ")", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "opno", "++", "]", ",", "exp", ",", "argno", ")", ";", "create_integer_operand", "(", "&", "ops", "[", "opno", "++", "]", ",", "(", "int", ")", "cond", ")", ";", "return", "mips_expand_builtin_insn", "(", "icode", ",", "opno", ",", "ops", ",", "true", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "floating-point", "comparison", "for", "built-in", "function", "call", "EXP", ".", "The", "first", "NARGS", "arguments", "are", "the", "values", "to", "be", "compared", ".", "ICODE", "is", "the", ".md", "pattern", "that", "does", "the", "comparison", "and", "COND", "is", "the", "condition", "that", "is", "being", "tested", ".", "Return", "an", "rtx", "for", "the", "result", "."], "TS_V_token": ["mips", "2", "0", "0", "0"], "File": "mips", "Func": "mips_expand_builtin_compare_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32947, "Length": 142} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_direct", "(", "enum", "insn_code", "icode", ",", "rtx", "target", ",", "tree", "exp", ",", "bool", "has_target_p", ")", "{", "struct", "expand_operand", "ops", "[", "MAX_RECOG_OPERANDS", "]", ";", "int", "opno", ",", "argno", ";", "opno", "=", "0", ";", "if", "(", "has_target_p", ")", "create_output_operand", "(", "&", "ops", "[", "opno", "++", "]", ",", "target", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "exp", ")", ")", ")", ";", "gcc_assert", "(", "opno", "+", "call_expr_nargs", "(", "exp", ")", "==", "insn_data", "[", "icode", "]", ".", "n_generator_args", ")", ";", "for", "(", "argno", "=", "0", ";", "argno", "<", "call_expr_nargs", "(", "exp", ")", ";", "argno", "++", ")", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "opno", "++", "]", ",", "exp", ",", "argno", ")", ";", "return", "mips_expand_builtin_insn", "(", "icode", ",", "opno", ",", "ops", ",", "has_target_p", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "MIPS_BUILTIN_DIRECT", "function", ".", "ICODE", "is", "the", "code", "of", "the", ".md", "pattern", "and", "ARGLIST", "is", "the", "list", "of", "function", "arguments", ".", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "result", ".", "HAS_TARGET", "indicates", "the", "function", "must", "return", "something", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_expand_builtin_direct", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32948, "Length": 118} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_movtf", "(", "enum", "mips_builtin_type", "type", ",", "enum", "insn_code", "icode", ",", "enum", "mips_fp_condition", "cond", ",", "rtx", "target", ",", "tree", "exp", ")", "{", "struct", "expand_operand", "ops", "[", "4", "]", ";", "rtx", "cmp_result", ";", "cmp_result", "=", "mips_expand_builtin_compare_1", "(", "icode", ",", "cond", ",", "exp", ",", "2", ")", ";", "create_output_operand", "(", "&", "ops", "[", "0", "]", ",", "target", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "exp", ")", ")", ")", ";", "if", "(", "type", "==", "MIPS_BUILTIN_MOVT", ")", "{", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "2", "]", ",", "exp", ",", "2", ")", ";", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "1", "]", ",", "exp", ",", "3", ")", ";", "}", "else", "{", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "1", "]", ",", "exp", ",", "2", ")", ";", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "2", "]", ",", "exp", ",", "3", ")", ";", "}", "create_fixed_operand", "(", "&", "ops", "[", "3", "]", ",", "cmp_result", ")", ";", "return", "mips_expand_builtin_insn", "(", "CODE_FOR_mips_cond_move_tf_ps", ",", "4", ",", "ops", ",", "true", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "__builtin_mips_movt_", "*", "_ps", "(", ")", "or", "__builtin_mips_movf_", "*", "_ps", "(", ")", "function", "(", "TYPE", "says", "which", ")", ".", "ARGLIST", "is", "the", "list", "of", "arguments", "to", "the", "function", ",", "ICODE", "is", "the", "instruction", "that", "should", "be", "used", "to", "compare", "the", "first", "two", "arguments", ",", "and", "COND", "is", "the", "condition", "it", "should", "test", ".", "TARGET", ",", "if", "nonnull", ",", "suggests", "a", "good", "place", "to", "put", "the", "result", "."], "TS_V_token": ["mips", "4", "2", "0", "2", "2", "1", "3", "1", "2", "2", "3", "3", "4"], "File": "mips", "Func": "mips_expand_builtin_movtf", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32949, "Length": 152} {"ground_truth": ["", "static", "rtx", "mips_expand_builtin_msa_test_branch", "(", "enum", "insn_code", "icode", ",", "tree", "exp", ")", "{", "struct", "expand_operand", "ops", "[", "3", "]", ";", "rtx_insn", "*", "cbranch", ";", "rtx_code_label", "*", "true_label", ",", "*", "done_label", ";", "rtx", "cmp_result", ";", "true_label", "=", "gen_label_rtx", "(", ")", ";", "done_label", "=", "gen_label_rtx", "(", ")", ";", "create_input_operand", "(", "&", "ops", "[", "0", "]", ",", "true_label", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "exp", ")", ")", ")", ";", "mips_prepare_builtin_arg", "(", "&", "ops", "[", "1", "]", ",", "exp", ",", "0", ")", ";", "create_fixed_operand", "(", "&", "ops", "[", "2", "]", ",", "const0_rtx", ")", ";", "if", "(", "GET_CODE", "(", "ops", "[", "1", "]", ".", "value", ")", "!=", "REG", ")", "ops", "[", "1", "]", ".", "value", "=", "force_reg", "(", "ops", "[", "1", "]", ".", "mode", ",", "ops", "[", "1", "]", ".", "value", ")", ";", "if", "(", "(", "cbranch", "=", "maybe_gen_insn", "(", "icode", ",", "3", ",", "ops", ")", ")", "==", "NULL_RTX", ")", "error", "(", "\"failed to expand built-in function\"", ")", ";", "cmp_result", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "mips_emit_move", "(", "cmp_result", ",", "const0_rtx", ")", ";", "emit_jump_insn", "(", "cbranch", ")", ";", "emit_jump_insn", "(", "gen_jump", "(", "done_label", ")", ")", ";", "emit_barrier", "(", ")", ";", "emit_label", "(", "true_label", ")", ";", "mips_emit_move", "(", "cmp_result", ",", "const1_rtx", ")", ";", "emit_label", "(", "done_label", ")", ";", "return", "cmp_result", ";", "}", ""], "natrual_language": ["Expand", "an", "MSA", "built-in", "for", "a", "compare", "and", "branch", "instruction", "specified", "by", "ICODE", ",", "set", "a", "general-purpose", "register", "to", "1", "if", "the", "branch", "was", "taken", ",", "0", "otherwise", "."], "TS_V_token": ["mips", "3", "0", "1", "0", "2", "1", "1", "1", "1", "3", "\"failed to expand built-in function\""], "File": "mips", "Func": "mips_expand_builtin_msa_test_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32950, "Length": 200} {"ground_truth": ["", "rtx_insn", "*", "mips_expand_call", "(", "enum", "mips_call_type", "type", ",", "rtx", "result", ",", "rtx", "addr", ",", "rtx", "args_size", ",", "rtx", "aux", ",", "bool", "lazy_p", ")", "{", "rtx", "orig_addr", ",", "pattern", ";", "rtx_insn", "*", "insn", ";", "int", "fp_code", ";", "fp_code", "=", "aux", "==", "0", "?", "0", ":", "(", "int", ")", "GET_MODE", "(", "aux", ")", ";", "insn", "=", "mips16_build_call_stub", "(", "result", ",", "&", "addr", ",", "args_size", ",", "fp_code", ")", ";", "if", "(", "insn", ")", "{", "gcc_assert", "(", "!", "lazy_p", "&&", "type", "==", "MIPS_CALL_NORMAL", ")", ";", "return", "insn", ";", "}", "orig_addr", "=", "addr", ";", "if", "(", "!", "call_insn_operand", "(", "addr", ",", "VOIDmode", ")", ")", "{", "if", "(", "type", "==", "MIPS_CALL_EPILOGUE", ")", "addr", "=", "MIPS_EPILOGUE_TEMP", "(", "Pmode", ")", ";", "else", "addr", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "lazy_p", "|=", "mips_load_call_address", "(", "type", ",", "addr", ",", "orig_addr", ")", ";", "}", "if", "(", "result", "==", "0", ")", "{", "rtx", "(", "*", "fn", ")", "(", "rtx", ",", "rtx", ")", ";", "if", "(", "type", "==", "MIPS_CALL_SIBCALL", ")", "fn", "=", "gen_sibcall_internal", ";", "else", "fn", "=", "gen_call_internal", ";", "pattern", "=", "fn", "(", "addr", ",", "args_size", ")", ";", "}", "else", "if", "(", "GET_CODE", "(", "result", ")", "==", "PARALLEL", "&&", "XVECLEN", "(", "result", ",", "0", ")", "==", "2", ")", "{", "rtx", "(", "*", "fn", ")", "(", "rtx", ",", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "reg1", ",", "reg2", ";", "if", "(", "type", "==", "MIPS_CALL_SIBCALL", ")", "fn", "=", "gen_sibcall_value_multiple_internal", ";", "else", "fn", "=", "gen_call_value_multiple_internal", ";", "reg1", "=", "XEXP", "(", "XVECEXP", "(", "result", ",", "0", ",", "0", ")", ",", "0", ")", ";", "reg2", "=", "XEXP", "(", "XVECEXP", "(", "result", ",", "0", ",", "1", ")", ",", "0", ")", ";", "pattern", "=", "fn", "(", "reg1", ",", "addr", ",", "args_size", ",", "reg2", ")", ";", "}", "else", "{", "rtx", "(", "*", "fn", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "if", "(", "type", "==", "MIPS_CALL_SIBCALL", ")", "fn", "=", "gen_sibcall_value_internal", ";", "else", "fn", "=", "gen_call_value_internal", ";", "if", "(", "GET_CODE", "(", "result", ")", "==", "PARALLEL", "&&", "XVECLEN", "(", "result", ",", "0", ")", "==", "1", ")", "result", "=", "XEXP", "(", "XVECEXP", "(", "result", ",", "0", ",", "0", ")", ",", "0", ")", ";", "pattern", "=", "fn", "(", "result", ",", "addr", ",", "args_size", ")", ";", "}", "return", "mips_emit_call_insn", "(", "pattern", ",", "orig_addr", ",", "addr", ",", "lazy_p", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "call", "or", "call_value", "instruction", ".", "RESULT", "is", "where", "the", "result", "will", "go", "(", "null", "for", "calls", ")", ",", "ADDR", "is", "the", "address", "of", "the", "function", ",", "ARGS_SIZE", "is", "the", "size", "of", "the", "arguments", "and", "AUX", "is", "the", "value", "passed", "to", "us", "by", "mips_function_arg", ".", "SIBCALL_P", "is", "true", "if", "we", "are", "expanding", "a", "sibling", "call", ",", "false", "if", "we", "'re", "expanding", "a", "normal", "call", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "2", "0", "0", "0", "0", "1", "0", "0", "1", "0", "0", "0"], "File": "mips", "Func": "mips_expand_call", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32951, "Length": 366} {"ground_truth": ["", "void", "mips_expand_conditional_branch", "(", "rtx", "*", "operands", ")", "{", "enum", "rtx_code", "code", "=", "GET_CODE", "(", "operands", "[", "0", "]", ")", ";", "rtx", "op0", "=", "operands", "[", "1", "]", ";", "rtx", "op1", "=", "operands", "[", "2", "]", ";", "rtx", "condition", ";", "mips_emit_compare", "(", "&", "code", ",", "&", "op0", ",", "&", "op1", ",", "TARGET_MIPS16", ")", ";", "condition", "=", "gen_rtx_fmt_ee", "(", "code", ",", "VOIDmode", ",", "op0", ",", "op1", ")", ";", "emit_jump_insn", "(", "gen_condjump", "(", "condition", ",", "operands", "[", "3", "]", ")", ")", ";", "}", ""], "natrual_language": ["Compare", "OPERANDS", "[", "1", "]", "with", "OPERANDS", "[", "2", "]", "using", "comparison", "code", "CODE", "and", "jump", "to", "OPERANDS", "[", "3", "]", "if", "the", "condition", "holds", "."], "TS_V_token": ["mips", "0", "1", "2", "3"], "File": "mips", "Func": "mips_expand_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32952, "Length": 80} {"ground_truth": ["", "void", "mips_expand_conditional_move", "(", "rtx", "*", "operands", ")", "{", "rtx", "cond", ";", "enum", "rtx_code", "code", "=", "GET_CODE", "(", "operands", "[", "1", "]", ")", ";", "rtx", "op0", "=", "XEXP", "(", "operands", "[", "1", "]", ",", "0", ")", ";", "rtx", "op1", "=", "XEXP", "(", "operands", "[", "1", "]", ",", "1", ")", ";", "mips_emit_compare", "(", "&", "code", ",", "&", "op0", ",", "&", "op1", ",", "true", ")", ";", "cond", "=", "gen_rtx_fmt_ee", "(", "code", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ",", "op1", ")", ";", "if", "(", "ISA_HAS_SEL", "&&", "INTEGRAL_MODE_P", "(", "GET_MODE", "(", "operands", "[", "2", "]", ")", ")", "&&", "register_operand", "(", "operands", "[", "2", "]", ",", "VOIDmode", ")", "&&", "register_operand", "(", "operands", "[", "3", "]", ",", "VOIDmode", ")", ")", "{", "machine_mode", "mode", "=", "GET_MODE", "(", "operands", "[", "0", "]", ")", ";", "rtx", "temp", "=", "gen_reg_rtx", "(", "mode", ")", ";", "rtx", "temp2", "=", "gen_reg_rtx", "(", "mode", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "temp", ",", "gen_rtx_IF_THEN_ELSE", "(", "mode", ",", "cond", ",", "operands", "[", "2", "]", ",", "const0_rtx", ")", ")", ")", ";", "cond", "=", "gen_rtx_fmt_ee", "(", "(", "code", "==", "EQ", ")", "?", "NE", ":", "EQ", ",", "GET_MODE", "(", "op0", ")", ",", "op0", ",", "op1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "temp2", ",", "gen_rtx_IF_THEN_ELSE", "(", "mode", ",", "cond", ",", "operands", "[", "3", "]", ",", "const0_rtx", ")", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "operands", "[", "0", "]", ",", "gen_rtx_IOR", "(", "mode", ",", "temp", ",", "temp2", ")", ")", ")", ";", "}", "else", "{", "if", "(", "FLOAT_MODE_P", "(", "GET_MODE", "(", "operands", "[", "2", "]", ")", ")", "&&", "!", "ISA_HAS_SEL", ")", "{", "operands", "[", "2", "]", "=", "force_reg", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "operands", "[", "2", "]", ")", ";", "operands", "[", "3", "]", "=", "force_reg", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "operands", "[", "3", "]", ")", ";", "}", "emit_insn", "(", "gen_rtx_SET", "(", "operands", "[", "0", "]", ",", "gen_rtx_IF_THEN_ELSE", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "cond", ",", "operands", "[", "2", "]", ",", "operands", "[", "3", "]", ")", ")", ")", ";", "}", "}", ""], "natrual_language": ["Perform", "the", "comparison", "in", "OPERANDS", "[", "1", "]", ".", "Move", "OPERANDS", "[", "2", "]", "into", "OPERANDS", "[", "0", "]", "if", "the", "condition", "holds", ",", "otherwise", "move", "OPERANDS", "[", "3", "]", "into", "OPERANDS", "[", "0", "]", "."], "TS_V_token": ["mips", "1", "1", "0", "1", "1", "2", "2", "3", "0", "2", "3", "0", "2", "2", "0", "2", "3", "0", "3", "0", "0", "2", "3"], "File": "mips", "Func": "mips_expand_conditional_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32953, "Length": 329} {"ground_truth": ["", "void", "mips_expand_conditional_trap", "(", "rtx", "comparison", ")", "{", "rtx", "op0", ",", "op1", ";", "machine_mode", "mode", ";", "enum", "rtx_code", "code", ";", "code", "=", "GET_CODE", "(", "comparison", ")", ";", "switch", "(", "code", ")", "{", "case", "GT", ":", "case", "LE", ":", "case", "GTU", ":", "case", "LEU", ":", "code", "=", "swap_condition", "(", "code", ")", ";", "op0", "=", "XEXP", "(", "comparison", ",", "1", ")", ";", "op1", "=", "XEXP", "(", "comparison", ",", "0", ")", ";", "break", ";", "default", ":", "op0", "=", "XEXP", "(", "comparison", ",", "0", ")", ";", "op1", "=", "XEXP", "(", "comparison", ",", "1", ")", ";", "break", ";", "}", "mode", "=", "GET_MODE", "(", "XEXP", "(", "comparison", ",", "0", ")", ")", ";", "op0", "=", "force_reg", "(", "mode", ",", "op0", ")", ";", "if", "(", "!", "(", "ISA_HAS_COND_TRAPI", "?", "arith_operand", "(", "op1", ",", "mode", ")", ":", "reg_or_0_operand", "(", "op1", ",", "mode", ")", ")", ")", "op1", "=", "force_reg", "(", "mode", ",", "op1", ")", ";", "emit_insn", "(", "gen_rtx_TRAP_IF", "(", "VOIDmode", ",", "gen_rtx_fmt_ee", "(", "code", ",", "mode", ",", "op0", ",", "op1", ")", ",", "const0_rtx", ")", ")", ";", "}", ""], "natrual_language": ["Perform", "the", "comparison", "in", "COMPARISON", ",", "then", "trap", "if", "the", "condition", "holds", "."], "TS_V_token": ["mips", "1", "0", "0", "1", "0"], "File": "mips", "Func": "mips_expand_conditional_trap", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32954, "Length": 166} {"ground_truth": ["", "bool", "mips_expand_ext_as_unaligned_load", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "width", ",", "HOST_WIDE_INT", "bitpos", ",", "bool", "unsigned_p", ")", "{", "rtx", "left", ",", "right", ",", "temp", ";", "rtx", "dest1", "=", "NULL_RTX", ";", "if", "(", "GET_MODE", "(", "dest", ")", "==", "DImode", "&&", "(", "REG_P", "(", "dest", ")", "||", "(", "SUBREG_P", "(", "dest", ")", "&&", "!", "MEM_P", "(", "SUBREG_REG", "(", "dest", ")", ")", ")", ")", "&&", "GET_MODE_BITSIZE", "(", "SImode", ")", "==", "width", ")", "{", "dest1", "=", "dest", ";", "dest", "=", "gen_reg_rtx", "(", "SImode", ")", ";", "}", "if", "(", "!", "mips_get_unaligned_mem", "(", "src", ",", "width", ",", "bitpos", ",", "&", "left", ",", "&", "right", ")", ")", "return", "false", ";", "temp", "=", "gen_reg_rtx", "(", "GET_MODE", "(", "dest", ")", ")", ";", "if", "(", "GET_MODE", "(", "dest", ")", "==", "DImode", ")", "{", "emit_insn", "(", "gen_mov_ldl", "(", "temp", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_ldr", "(", "dest", ",", "copy_rtx", "(", "src", ")", ",", "right", ",", "temp", ")", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_mov_lwl", "(", "temp", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_lwr", "(", "dest", ",", "copy_rtx", "(", "src", ")", ",", "right", ",", "temp", ")", ")", ";", "}", "if", "(", "dest1", ")", "{", "if", "(", "unsigned_p", ")", "emit_insn", "(", "gen_zero_extendsidi2", "(", "dest1", ",", "dest", ")", ")", ";", "else", "emit_insn", "(", "gen_extendsidi2", "(", "dest1", ",", "dest", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "use", "left/right", "loads", "to", "expand", "an", "``", "extv", "''", "or", "``", "extzv", "''", "pattern", ".", "DEST", ",", "SRC", ",", "WIDTH", "and", "BITPOS", "are", "the", "operands", "passed", "to", "the", "expander", ";", "the", "operation", "is", "the", "equivalent", "of", ":", "(", "set", "DEST", "(", "*", "_extract", "SRC", "WIDTH", "BITPOS", ")", ")", "Return", "true", "on", "success", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_ext_as_unaligned_load", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32955, "Length": 221} {"ground_truth": ["", "static", "bool", "mips_expand_ghost_gp_insns", "(", "void", ")", "{", "if", "(", "!", "TARGET_USE_GOT", "||", "cfun", "->", "machine", "->", "global_pointer", "==", "INVALID_REGNUM", "||", "mips_must_initialize_gp_p", "(", ")", ")", "return", "false", ";", "if", "(", "!", "mips_has_long_branch_p", "(", ")", ")", "return", "false", ";", "cfun", "->", "machine", "->", "must_initialize_gp_p", "=", "true", ";", "split_all_insns_noflow", "(", ")", ";", "return", "true", ";", "}", ""], "natrual_language": ["If", "we", "are", "using", "a", "GOT", ",", "but", "have", "not", "decided", "to", "use", "a", "global", "pointer", "yet", ",", "see", "whether", "we", "need", "one", "to", "implement", "long", "branches", ".", "Convert", "the", "ghost", "global-pointer", "instructions", "into", "real", "ones", "if", "so", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_ghost_gp_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32956, "Length": 53} {"ground_truth": ["", "bool", "mips_expand_ins_as_unaligned_store", "(", "rtx", "dest", ",", "rtx", "src", ",", "HOST_WIDE_INT", "width", ",", "HOST_WIDE_INT", "bitpos", ")", "{", "rtx", "left", ",", "right", ";", "machine_mode", "mode", ";", "if", "(", "!", "mips_get_unaligned_mem", "(", "dest", ",", "width", ",", "bitpos", ",", "&", "left", ",", "&", "right", ")", ")", "return", "false", ";", "mode", "=", "int_mode_for_size", "(", "width", ",", "0", ")", ".", "require", "(", ")", ";", "src", "=", "gen_lowpart", "(", "mode", ",", "src", ")", ";", "if", "(", "mode", "==", "DImode", ")", "{", "emit_insn", "(", "gen_mov_sdl", "(", "dest", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_sdr", "(", "copy_rtx", "(", "dest", ")", ",", "copy_rtx", "(", "src", ")", ",", "right", ")", ")", ";", "}", "else", "{", "emit_insn", "(", "gen_mov_swl", "(", "dest", ",", "src", ",", "left", ")", ")", ";", "emit_insn", "(", "gen_mov_swr", "(", "copy_rtx", "(", "dest", ")", ",", "copy_rtx", "(", "src", ")", ",", "right", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "use", "left/right", "stores", "to", "expand", "an", "``", "ins", "''", "pattern", ".", "DEST", ",", "WIDTH", ",", "BITPOS", "and", "SRC", "are", "the", "operands", "passed", "to", "the", "expander", ";", "the", "operation", "is", "the", "equivalent", "of", ":", "(", "set", "(", "zero_extract", "DEST", "WIDTH", "BITPOS", ")", "SRC", ")", "Return", "true", "on", "success", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_expand_ins_as_unaligned_store", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32957, "Length": 142} {"ground_truth": ["", "static", "void", "mips_expand_msa_cmp", "(", "rtx", "dest", ",", "enum", "rtx_code", "cond", ",", "rtx", "op0", ",", "rtx", "op1", ")", "{", "machine_mode", "cmp_mode", "=", "GET_MODE", "(", "op0", ")", ";", "int", "unspec", "=", "-", "1", ";", "bool", "negate", "=", "false", ";", "switch", "(", "cmp_mode", ")", "{", "case", "E_V16QImode", ":", "case", "E_V8HImode", ":", "case", "E_V4SImode", ":", "case", "E_V2DImode", ":", "switch", "(", "cond", ")", "{", "case", "NE", ":", "cond", "=", "reverse_condition", "(", "cond", ")", ";", "negate", "=", "true", ";", "break", ";", "case", "EQ", ":", "case", "LT", ":", "case", "LE", ":", "case", "LTU", ":", "case", "LEU", ":", "break", ";", "case", "GE", ":", "case", "GT", ":", "case", "GEU", ":", "case", "GTU", ":", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "cond", "=", "swap_condition", "(", "cond", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "mips_emit_binary", "(", "cond", ",", "dest", ",", "op0", ",", "op1", ")", ";", "if", "(", "negate", ")", "emit_move_insn", "(", "dest", ",", "gen_rtx_NOT", "(", "GET_MODE", "(", "dest", ")", ",", "dest", ")", ")", ";", "break", ";", "case", "E_V4SFmode", ":", "case", "E_V2DFmode", ":", "switch", "(", "cond", ")", "{", "case", "UNORDERED", ":", "case", "ORDERED", ":", "case", "EQ", ":", "case", "NE", ":", "case", "UNEQ", ":", "case", "UNLE", ":", "case", "UNLT", ":", "break", ";", "case", "LTGT", ":", "cond", "=", "NE", ";", "break", ";", "case", "UNGE", ":", "cond", "=", "UNLE", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "case", "UNGT", ":", "cond", "=", "UNLT", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "case", "LE", ":", "unspec", "=", "UNSPEC_MSA_FSLE", ";", "break", ";", "case", "LT", ":", "unspec", "=", "UNSPEC_MSA_FSLT", ";", "break", ";", "case", "GE", ":", "unspec", "=", "UNSPEC_MSA_FSLE", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "case", "GT", ":", "unspec", "=", "UNSPEC_MSA_FSLT", ";", "std", "::", "swap", "(", "op0", ",", "op1", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "unspec", "<", "0", ")", "mips_emit_binary", "(", "cond", ",", "dest", ",", "op0", ",", "op1", ")", ";", "else", "{", "rtx", "x", "=", "gen_rtx_UNSPEC", "(", "GET_MODE", "(", "dest", ")", ",", "gen_rtvec", "(", "2", ",", "op0", ",", "op1", ")", ",", "unspec", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "x", ")", ")", ";", "}", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Generate", "RTL", "for", "comparing", "CMP_OP0", "and", "CMP_OP1", "using", "condition", "COND", "and", "store", "the", "result", "-1", "or", "0", "in", "DEST", "."], "TS_V_token": ["mips", "1", "0", "2"], "File": "mips", "Func": "mips_expand_msa_cmp", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32958, "Length": 365} {"ground_truth": ["", "static", "bool", "mips_expand_msa_shuffle", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "rtx", "x", ",", "elts", "[", "MAX_VECT_LEN", "]", ";", "rtvec", "v", ";", "rtx_insn", "*", "insn", ";", "unsigned", "i", ";", "if", "(", "!", "ISA_HAS_MSA", ")", "return", "false", ";", "for", "(", "i", "=", "0", ";", "i", "<", "d", "->", "nelt", ";", "i", "++", ")", "elts", "[", "i", "]", "=", "GEN_INT", "(", "d", "->", "perm", "[", "i", "]", ")", ";", "v", "=", "gen_rtvec_v", "(", "d", "->", "nelt", ",", "elts", ")", ";", "x", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "v", ")", ";", "if", "(", "!", "mips_const_vector_shuffle_set_p", "(", "x", ",", "d", "->", "vmode", ")", ")", "return", "false", ";", "x", "=", "gen_rtx_VEC_SELECT", "(", "d", "->", "vmode", ",", "d", "->", "op0", ",", "x", ")", ";", "x", "=", "gen_rtx_SET", "(", "d", "->", "target", ",", "x", ")", ";", "insn", "=", "emit_insn", "(", "x", ")", ";", "if", "(", "recog_memoized", "(", "insn", ")", "<", "0", ")", "{", "remove_insn", "(", "insn", ")", ";", "return", "false", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Construct", "(", "set", "target", "(", "vec_select", "op0", "(", "parallel", "selector", ")", ")", ")", "and", "return", "true", "if", "that", "'s", "a", "valid", "instruction", "in", "the", "active", "ISA", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_expand_msa_shuffle", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32959, "Length": 157} {"ground_truth": ["", "void", "mips_expand_scc", "(", "rtx", "operands", "[", "]", ")", "{", "rtx", "target", "=", "operands", "[", "0", "]", ";", "enum", "rtx_code", "code", "=", "GET_CODE", "(", "operands", "[", "1", "]", ")", ";", "rtx", "op0", "=", "operands", "[", "2", "]", ";", "rtx", "op1", "=", "operands", "[", "3", "]", ";", "gcc_assert", "(", "GET_MODE_CLASS", "(", "GET_MODE", "(", "op0", ")", ")", "==", "MODE_INT", ")", ";", "if", "(", "code", "==", "EQ", "||", "code", "==", "NE", ")", "{", "if", "(", "ISA_HAS_SEQ_SNE", "&&", "reg_imm10_operand", "(", "op1", ",", "GET_MODE", "(", "op1", ")", ")", ")", "mips_emit_binary", "(", "code", ",", "target", ",", "op0", ",", "op1", ")", ";", "else", "{", "rtx", "zie", "=", "mips_zero_if_equal", "(", "op0", ",", "op1", ")", ";", "mips_emit_binary", "(", "code", ",", "target", ",", "zie", ",", "const0_rtx", ")", ";", "}", "}", "else", "mips_emit_int_order_test", "(", "code", ",", "0", ",", "target", ",", "op0", ",", "op1", ")", ";", "}", ""], "natrual_language": ["Try", "performing", "the", "comparison", "in", "OPERANDS", "[", "1", "]", ",", "whose", "arms", "are", "OPERANDS", "[", "2", "]", "and", "OPERAND", "[", "3", "]", ".", "Store", "the", "result", "in", "OPERANDS", "[", "0", "]", ".", "On", "64-bit", "targets", ",", "the", "mode", "of", "the", "comparison", "and", "target", "will", "always", "be", "SImode", ",", "thus", "possibly", "narrower", "than", "that", "of", "the", "comparison", "'s", "operands", "."], "TS_V_token": ["mips", "0", "1", "2", "3", "0"], "File": "mips", "Func": "mips_expand_scc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32960, "Length": 134} {"ground_truth": ["", "void", "mips_expand_synci_loop", "(", "rtx", "begin", ",", "rtx", "end", ")", "{", "rtx", "inc", ",", "cmp_result", ",", "mask", ",", "length", ";", "rtx_code_label", "*", "label", ",", "*", "end_label", ";", "end_label", "=", "gen_label_rtx", "(", ")", ";", "cmp_result", "=", "gen_rtx_EQ", "(", "VOIDmode", ",", "begin", ",", "end", ")", ";", "emit_jump_insn", "(", "gen_condjump", "(", "cmp_result", ",", "end_label", ")", ")", ";", "inc", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_rdhwr_synci_step", ",", "(", "inc", ")", ")", ")", ";", "cmp_result", "=", "gen_rtx_EQ", "(", "VOIDmode", ",", "inc", ",", "const0_rtx", ")", ";", "emit_jump_insn", "(", "gen_condjump", "(", "cmp_result", ",", "end_label", ")", ")", ";", "mask", "=", "mips_force_unary", "(", "Pmode", ",", "NEG", ",", "inc", ")", ";", "begin", "=", "mips_force_binary", "(", "Pmode", ",", "AND", ",", "begin", ",", "mask", ")", ";", "length", "=", "mips_force_binary", "(", "Pmode", ",", "MINUS", ",", "end", ",", "begin", ")", ";", "label", "=", "gen_label_rtx", "(", ")", ";", "emit_label", "(", "label", ")", ";", "emit_insn", "(", "gen_synci", "(", "begin", ")", ")", ";", "mips_emit_binary", "(", "MINUS", ",", "length", ",", "length", ",", "inc", ")", ";", "mips_emit_binary", "(", "PLUS", ",", "begin", ",", "begin", ",", "inc", ")", ";", "cmp_result", "=", "gen_rtx_GT", "(", "VOIDmode", ",", "length", ",", "const0_rtx", ")", ";", "emit_jump_insn", "(", "gen_condjump", "(", "cmp_result", ",", "label", ")", ")", ";", "emit_label", "(", "end_label", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "loop", "of", "synci", "insns", "for", "the", "address", "range", "[", "BEGIN", ",", "END", ")", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_synci_loop", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32961, "Length": 198} {"ground_truth": ["", "rtx", "mips_expand_thread_pointer", "(", "rtx", "tp", ")", "{", "rtx", "fn", ";", "if", "(", "TARGET_MIPS16", ")", "{", "if", "(", "!", "mips16_rdhwr_stub", ")", "mips16_rdhwr_stub", "=", "new", "mips16_rdhwr_one_only_stub", "(", ")", ";", "fn", "=", "mips16_stub_call_address", "(", "mips16_rdhwr_stub", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_tls_get_tp_mips16", ",", "(", "tp", ",", "fn", ")", ")", ")", ";", "}", "else", "emit_insn", "(", "PMODE_INSN", "(", "gen_tls_get_tp", ",", "(", "tp", ")", ")", ")", ";", "return", "tp", ";", "}", ""], "natrual_language": ["Return", "a", "pseudo", "register", "that", "contains", "the", "current", "thread", "pointer", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_thread_pointer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32962, "Length": 66} {"ground_truth": ["", "static", "void", "mips_expand_to_rtl_hook", "(", "void", ")", "{", "mips_set_tuning_info", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_EXPAND_TO_RTL_HOOK", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_to_rtl_hook", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32963, "Length": 12} {"ground_truth": ["", "void", "mips_expand_vcondv2sf", "(", "rtx", "dest", ",", "rtx", "true_src", ",", "rtx", "false_src", ",", "enum", "rtx_code", "cond", ",", "rtx", "cmp_op0", ",", "rtx", "cmp_op1", ")", "{", "rtx", "cmp_result", ";", "bool", "reversed_p", ";", "reversed_p", "=", "mips_reversed_fp_cond", "(", "&", "cond", ")", ";", "cmp_result", "=", "mips_allocate_fcc", "(", "CCV2mode", ")", ";", "emit_insn", "(", "gen_scc_ps", "(", "cmp_result", ",", "gen_rtx_fmt_ee", "(", "cond", ",", "VOIDmode", ",", "cmp_op0", ",", "cmp_op1", ")", ")", ")", ";", "if", "(", "reversed_p", ")", "emit_insn", "(", "gen_mips_cond_move_tf_ps", "(", "dest", ",", "false_src", ",", "true_src", ",", "cmp_result", ")", ")", ";", "else", "emit_insn", "(", "gen_mips_cond_move_tf_ps", "(", "dest", ",", "true_src", ",", "false_src", ",", "cmp_result", ")", ")", ";", "}", ""], "natrual_language": ["Implement", ":", "(", "set", "temp", "(", "COND", ":", "CCV2", "CMP_OP0", "CMP_OP1", ")", ")", "(", "set", "DEST", "(", "unspec", "[", "TRUE_SRC", "FALSE_SRC", "temp", "]", "UNSPEC_MOVE_TF_PS", ")", ")"], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_vcondv2sf", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32964, "Length": 97} {"ground_truth": ["", "void", "mips_expand_vec_cond_expr", "(", "machine_mode", "mode", ",", "machine_mode", "vimode", ",", "rtx", "*", "operands", ")", "{", "rtx", "cond", "=", "operands", "[", "3", "]", ";", "rtx", "cmp_op0", "=", "operands", "[", "4", "]", ";", "rtx", "cmp_op1", "=", "operands", "[", "5", "]", ";", "rtx", "cmp_res", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "mips_expand_msa_cmp", "(", "cmp_res", ",", "GET_CODE", "(", "cond", ")", ",", "cmp_op0", ",", "cmp_op1", ")", ";", "if", "(", "operands", "[", "1", "]", "==", "CONSTM1_RTX", "(", "vimode", ")", "&&", "operands", "[", "2", "]", "==", "CONST0_RTX", "(", "vimode", ")", ")", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "cmp_res", ")", ";", "else", "{", "rtx", "src1", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "rtx", "src2", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "rtx", "mask", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "rtx", "bsel", ";", "emit_move_insn", "(", "mask", ",", "cmp_res", ")", ";", "if", "(", "register_operand", "(", "operands", "[", "1", "]", ",", "mode", ")", ")", "{", "rtx", "xop1", "=", "operands", "[", "1", "]", ";", "if", "(", "mode", "!=", "vimode", ")", "{", "xop1", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "emit_move_insn", "(", "xop1", ",", "gen_lowpart", "(", "vimode", ",", "operands", "[", "1", "]", ")", ")", ";", "}", "emit_move_insn", "(", "src1", ",", "xop1", ")", ";", "}", "else", "{", "gcc_assert", "(", "operands", "[", "1", "]", "==", "CONSTM1_RTX", "(", "vimode", ")", ")", ";", "emit_move_insn", "(", "src1", ",", "mask", ")", ";", "}", "if", "(", "register_operand", "(", "operands", "[", "2", "]", ",", "mode", ")", ")", "{", "rtx", "xop2", "=", "operands", "[", "2", "]", ";", "if", "(", "mode", "!=", "vimode", ")", "{", "xop2", "=", "gen_reg_rtx", "(", "vimode", ")", ";", "emit_move_insn", "(", "xop2", ",", "gen_lowpart", "(", "vimode", ",", "operands", "[", "2", "]", ")", ")", ";", "}", "emit_move_insn", "(", "src2", ",", "xop2", ")", ";", "}", "else", "{", "gcc_assert", "(", "operands", "[", "2", "]", "==", "CONST0_RTX", "(", "mode", ")", ")", ";", "emit_move_insn", "(", "src2", ",", "mask", ")", ";", "}", "bsel", "=", "gen_rtx_IOR", "(", "vimode", ",", "gen_rtx_AND", "(", "vimode", ",", "gen_rtx_NOT", "(", "vimode", ",", "mask", ")", ",", "src2", ")", ",", "gen_rtx_AND", "(", "vimode", ",", "mask", ",", "src1", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "mask", ",", "bsel", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_rtx_SUBREG", "(", "mode", ",", "mask", ",", "0", ")", ")", ";", "}", "}", ""], "natrual_language": ["Expand", "VEC_COND_EXPR", ",", "where", ":", "MODE", "is", "mode", "of", "the", "result", "VIMODE", "equivalent", "integer", "mode", "OPERANDS", "operands", "of", "VEC_COND_EXPR", "."], "TS_V_token": ["mips", "3", "4", "5", "1", "2", "0", "1", "1", "1", "1", "2", "2", "2", "2", "0", "0"], "File": "mips", "Func": "mips_expand_vec_cond_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32965, "Length": 351} {"ground_truth": ["", "void", "mips_expand_vec_minmax", "(", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ",", "rtx", "(", "*", "cmp", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ",", "bool", "min_p", ")", "{", "machine_mode", "vmode", "=", "GET_MODE", "(", "target", ")", ";", "rtx", "tc", ",", "t0", ",", "t1", ",", "x", ";", "tc", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "t0", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "cmp", "(", "tc", ",", "op0", ",", "op1", ")", ")", ";", "x", "=", "gen_rtx_AND", "(", "vmode", ",", "tc", ",", "(", "min_p", "?", "op1", ":", "op0", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "t0", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_NOT", "(", "vmode", ",", "tc", ")", ";", "x", "=", "gen_rtx_AND", "(", "vmode", ",", "x", ",", "(", "min_p", "?", "op0", ":", "op1", ")", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "t1", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_IOR", "(", "vmode", ",", "t0", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "target", ",", "x", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "vector", "minimum/maximum", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_vec_minmax", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32966, "Length": 164} {"ground_truth": ["", "void", "mips_expand_vec_reduc", "(", "rtx", "target", ",", "rtx", "in", ",", "rtx", "(", "*", "gen", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ")", "{", "machine_mode", "vmode", "=", "GET_MODE", "(", "in", ")", ";", "unsigned", "char", "perm2", "[", "2", "]", ";", "rtx", "last", ",", "next", ",", "fold", ",", "x", ";", "bool", "ok", ";", "last", "=", "in", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "switch", "(", "vmode", ")", "{", "case", "E_V2SFmode", ":", "perm2", "[", "0", "]", "=", "1", ";", "perm2", "[", "1", "]", "=", "2", ";", "ok", "=", "mips_expand_vselect_vconcat", "(", "fold", ",", "last", ",", "last", ",", "perm2", ",", "2", ")", ";", "gcc_assert", "(", "ok", ")", ";", "break", ";", "case", "E_V2SImode", ":", "emit_insn", "(", "gen_loongson_punpckhwd", "(", "fold", ",", "last", ",", "last", ")", ")", ";", "break", ";", "case", "E_V4HImode", ":", "emit_insn", "(", "gen_loongson_punpckhwd_hi", "(", "fold", ",", "last", ",", "last", ")", ")", ";", "next", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "gen", "(", "next", ",", "last", ",", "fold", ")", ")", ";", "last", "=", "next", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "x", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "16", ")", ")", ";", "emit_insn", "(", "gen_vec_shr_v4hi", "(", "fold", ",", "last", ",", "x", ")", ")", ";", "break", ";", "case", "E_V8QImode", ":", "emit_insn", "(", "gen_loongson_punpckhwd_qi", "(", "fold", ",", "last", ",", "last", ")", ")", ";", "next", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "gen", "(", "next", ",", "last", ",", "fold", ")", ")", ";", "last", "=", "next", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "x", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "16", ")", ")", ";", "emit_insn", "(", "gen_vec_shr_v8qi", "(", "fold", ",", "last", ",", "x", ")", ")", ";", "next", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "emit_insn", "(", "gen", "(", "next", ",", "last", ",", "fold", ")", ")", ";", "last", "=", "next", ";", "fold", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "x", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "8", ")", ")", ";", "emit_insn", "(", "gen_vec_shr_v8qi", "(", "fold", ",", "last", ",", "x", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "emit_insn", "(", "gen", "(", "target", ",", "last", ",", "fold", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "a", "vector", "reduction", "."], "TS_V_token": ["mips", "2", "0", "1", "1", "2", "2", "16", "16", "8"], "File": "mips", "Func": "mips_expand_vec_reduc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32967, "Length": 338} {"ground_truth": ["", "void", "mips_expand_vec_unpack", "(", "rtx", "operands", "[", "2", "]", ",", "bool", "unsigned_p", ",", "bool", "high_p", ")", "{", "machine_mode", "imode", "=", "GET_MODE", "(", "operands", "[", "1", "]", ")", ";", "rtx", "(", "*", "unpack", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "(", "*", "cmpFunc", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ";", "rtx", "tmp", ",", "dest", ",", "zero", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "imode", ")", ")", "{", "switch", "(", "imode", ")", "{", "case", "E_V4SImode", ":", "if", "(", "BYTES_BIG_ENDIAN", "!=", "high_p", ")", "unpack", "=", "gen_msa_ilvl_w", ";", "else", "unpack", "=", "gen_msa_ilvr_w", ";", "cmpFunc", "=", "gen_msa_clt_s_w", ";", "break", ";", "case", "E_V8HImode", ":", "if", "(", "BYTES_BIG_ENDIAN", "!=", "high_p", ")", "unpack", "=", "gen_msa_ilvl_h", ";", "else", "unpack", "=", "gen_msa_ilvr_h", ";", "cmpFunc", "=", "gen_msa_clt_s_h", ";", "break", ";", "case", "E_V16QImode", ":", "if", "(", "BYTES_BIG_ENDIAN", "!=", "high_p", ")", "unpack", "=", "gen_msa_ilvl_b", ";", "else", "unpack", "=", "gen_msa_ilvr_b", ";", "cmpFunc", "=", "gen_msa_clt_s_b", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "break", ";", "}", "if", "(", "!", "unsigned_p", ")", "{", "tmp", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "cmpFunc", "(", "tmp", ",", "operands", "[", "1", "]", ",", "CONST0_RTX", "(", "imode", ")", ")", ")", ";", "}", "else", "tmp", "=", "force_reg", "(", "imode", ",", "CONST0_RTX", "(", "imode", ")", ")", ";", "dest", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "unpack", "(", "dest", ",", "operands", "[", "1", "]", ",", "tmp", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_lowpart", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "dest", ")", ")", ";", "return", ";", "}", "switch", "(", "imode", ")", "{", "case", "E_V8QImode", ":", "if", "(", "high_p", ")", "unpack", "=", "gen_loongson_punpckhbh", ";", "else", "unpack", "=", "gen_loongson_punpcklbh", ";", "cmpFunc", "=", "gen_loongson_pcmpgtb", ";", "break", ";", "case", "E_V4HImode", ":", "if", "(", "high_p", ")", "unpack", "=", "gen_loongson_punpckhhw", ";", "else", "unpack", "=", "gen_loongson_punpcklhw", ";", "cmpFunc", "=", "gen_loongson_pcmpgth", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "zero", "=", "force_reg", "(", "imode", ",", "CONST0_RTX", "(", "imode", ")", ")", ";", "if", "(", "unsigned_p", ")", "tmp", "=", "zero", ";", "else", "{", "tmp", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "cmpFunc", "(", "tmp", ",", "zero", ",", "operands", "[", "1", "]", ")", ")", ";", "}", "dest", "=", "gen_reg_rtx", "(", "imode", ")", ";", "emit_insn", "(", "unpack", "(", "dest", ",", "operands", "[", "1", "]", ",", "tmp", ")", ")", ";", "emit_move_insn", "(", "operands", "[", "0", "]", ",", "gen_lowpart", "(", "GET_MODE", "(", "operands", "[", "0", "]", ")", ",", "dest", ")", ")", ";", "}", ""], "natrual_language": ["Expand", "an", "integral", "vector", "unpack", "operation", "."], "TS_V_token": ["mips", "2", "1", "1", "1", "0", "0", "1", "1", "0", "0"], "File": "mips", "Func": "mips_expand_vec_unpack", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32968, "Length": 390} {"ground_truth": ["", "static", "void", "mips_expand_vi_broadcast", "(", "machine_mode", "vmode", ",", "rtx", "target", ",", "rtx", "elt", ")", "{", "struct", "expand_vec_perm_d", "d", ";", "rtx", "t1", ";", "bool", "ok", ";", "if", "(", "elt", "!=", "const0_rtx", ")", "elt", "=", "force_reg", "(", "GET_MODE_INNER", "(", "vmode", ")", ",", "elt", ")", ";", "if", "(", "REG_P", "(", "elt", ")", ")", "elt", "=", "gen_lowpart", "(", "DImode", ",", "elt", ")", ";", "t1", "=", "gen_reg_rtx", "(", "vmode", ")", ";", "switch", "(", "vmode", ")", "{", "case", "E_V8QImode", ":", "emit_insn", "(", "gen_loongson_vec_init1_v8qi", "(", "t1", ",", "elt", ")", ")", ";", "break", ";", "case", "E_V4HImode", ":", "emit_insn", "(", "gen_loongson_vec_init1_v4hi", "(", "t1", ",", "elt", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "memset", "(", "&", "d", ",", "0", ",", "sizeof", "(", "d", ")", ")", ";", "d", ".", "target", "=", "target", ";", "d", ".", "op0", "=", "t1", ";", "d", ".", "op1", "=", "t1", ";", "d", ".", "vmode", "=", "vmode", ";", "d", ".", "nelt", "=", "GET_MODE_NUNITS", "(", "vmode", ")", ";", "d", ".", "one_vector_p", "=", "true", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "gcc_assert", "(", "ok", ")", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "expand", "via", "broadcast", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_expand_vi_broadcast", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32969, "Length": 173} {"ground_truth": ["", "static", "void", "mips_expand_vi_constant", "(", "machine_mode", "vmode", ",", "unsigned", "nelt", ",", "rtx", "target", ",", "rtx", "vals", ")", "{", "rtvec", "vec", "=", "shallow_copy_rtvec", "(", "XVEC", "(", "vals", ",", "0", ")", ")", ";", "unsigned", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "rtx", "elem", "=", "RTVEC_ELT", "(", "vec", ",", "i", ")", ";", "if", "(", "!", "mips_constant_elt_p", "(", "elem", ")", ")", "RTVEC_ELT", "(", "vec", ",", "i", ")", "=", "CONST0_RTX", "(", "GET_MODE", "(", "elem", ")", ")", ";", "}", "emit_move_insn", "(", "target", ",", "gen_rtx_CONST_VECTOR", "(", "vmode", ",", "vec", ")", ")", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "replacing", "all", "of", "the", "non-constant", "elements", "of", "VALS", "with", "zeros", ",", "copy", "the", "constant", "vector", "to", "TARGET", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_expand_vi_constant", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32970, "Length": 94} {"ground_truth": ["", "static", "void", "mips_expand_vi_general", "(", "machine_mode", "vmode", ",", "machine_mode", "imode", ",", "unsigned", "nelt", ",", "unsigned", "nvar", ",", "rtx", "target", ",", "rtx", "vals", ")", "{", "rtx", "mem", "=", "assign_stack_temp", "(", "vmode", ",", "GET_MODE_SIZE", "(", "vmode", ")", ")", ";", "unsigned", "int", "i", ",", "isize", "=", "GET_MODE_SIZE", "(", "imode", ")", ";", "if", "(", "nvar", "<", "nelt", ")", "mips_expand_vi_constant", "(", "vmode", ",", "nelt", ",", "mem", ",", "vals", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "rtx", "x", "=", "XVECEXP", "(", "vals", ",", "0", ",", "i", ")", ";", "if", "(", "!", "mips_constant_elt_p", "(", "x", ")", ")", "emit_move_insn", "(", "adjust_address", "(", "mem", ",", "imode", ",", "i", "*", "isize", ")", ",", "x", ")", ";", "}", "emit_move_insn", "(", "target", ",", "mem", ")", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "expand", "anything", "via", "memory", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_expand_vi_general", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32971, "Length": 123} {"ground_truth": ["", "static", "void", "mips_expand_vi_loongson_one_pinsrh", "(", "rtx", "target", ",", "rtx", "vals", ",", "unsigned", "one_var", ")", "{", "mips_expand_vi_constant", "(", "V4HImode", ",", "4", ",", "target", ",", "vals", ")", ";", "emit_insn", "(", "gen_vec_setv4hi", "(", "target", ",", "target", ",", "XVECEXP", "(", "vals", ",", "0", ",", "one_var", ")", ",", "GEN_INT", "(", "one_var", ")", ")", ")", ";", "}", ""], "natrual_language": ["A", "subroutine", "of", "mips_expand_vec_init", ",", "expand", "via", "pinsrh", "."], "TS_V_token": ["mips", "4", "0"], "File": "mips", "Func": "mips_expand_vi_loongson_one_pinsrh", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32972, "Length": 50} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_bcast", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "elt", ";", "rtx", "t0", ",", "t1", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_MMI", ")", ")", "return", "false", ";", "if", "(", "d", "->", "vmode", "!=", "V8QImode", ")", "return", "false", ";", "if", "(", "!", "d", "->", "one_vector_p", ")", "return", "false", ";", "elt", "=", "d", "->", "perm", "[", "0", "]", ";", "for", "(", "i", "=", "1", ";", "i", "<", "8", ";", "++", "i", ")", "if", "(", "d", "->", "perm", "[", "i", "]", "!=", "elt", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "t0", "=", "gen_reg_rtx", "(", "V8QImode", ")", ";", "if", "(", "elt", "<", "4", ")", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op0", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op0", ")", ")", ";", "elt", "&=", "3", ";", "elt", "*=", "0x55", ";", "t1", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t1", ",", "gen_lowpart", "(", "V4HImode", ",", "t0", ")", ",", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "elt", ")", ")", ")", ")", ";", "emit_move_insn", "(", "d", "->", "target", ",", "gen_lowpart", "(", "V8QImode", ",", "t1", ")", ")", ";", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "broadcast", "patterns", "for", "the", "Loongson", "."], "TS_V_token": ["mips", "0", "1", "8", "4", "3", "0x55"], "File": "mips", "Func": "mips_expand_vpc_loongson_bcast", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32973, "Length": 202} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_even_odd", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "odd", ",", "nelt", "=", "d", "->", "nelt", ";", "rtx", "t0", ",", "t1", ",", "t2", ",", "t3", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_MMI", ")", ")", "return", "false", ";", "if", "(", "nelt", "<", "4", ")", "return", "false", ";", "odd", "=", "d", "->", "perm", "[", "0", "]", ";", "if", "(", "odd", ">", "1", ")", "return", "false", ";", "for", "(", "i", "=", "1", ";", "i", "<", "nelt", ";", "++", "i", ")", "if", "(", "d", "->", "perm", "[", "i", "]", "!=", "i", "*", "2", "+", "odd", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "t0", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "switch", "(", "d", "->", "vmode", ")", "{", "case", "E_V4HImode", ":", "emit_insn", "(", "gen_loongson_punpckhhw", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklhw", "(", "t1", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "if", "(", "odd", ")", "emit_insn", "(", "gen_loongson_punpckhhw", "(", "d", "->", "target", ",", "t1", ",", "t0", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpcklhw", "(", "d", "->", "target", ",", "t1", ",", "t0", ")", ")", ";", "break", ";", "case", "E_V8QImode", ":", "t2", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "t3", "=", "gen_reg_rtx", "(", "d", "->", "vmode", ")", ";", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t0", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t1", ",", "d", "->", "op0", ",", "d", "->", "op1", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "t2", ",", "t1", ",", "t0", ")", ")", ";", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "t3", ",", "t1", ",", "t0", ")", ")", ";", "if", "(", "odd", ")", "emit_insn", "(", "gen_loongson_punpckhbh", "(", "d", "->", "target", ",", "t3", ",", "t2", ")", ")", ";", "else", "emit_insn", "(", "gen_loongson_punpcklbh", "(", "d", "->", "target", ",", "t3", ",", "t2", ")", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "patterns", "for", "even-odd", "extraction", "."], "TS_V_token": ["mips", "4", "0", "1", "1", "2"], "File": "mips", "Func": "mips_expand_vpc_loongson_even_odd", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32974, "Length": 327} {"ground_truth": ["", "static", "bool", "mips_expand_vpc_loongson_pshufh", "(", "struct", "expand_vec_perm_d", "*", "d", ")", "{", "unsigned", "i", ",", "mask", ";", "rtx", "rmask", ";", "if", "(", "!", "(", "TARGET_HARD_FLOAT", "&&", "TARGET_LOONGSON_MMI", ")", ")", "return", "false", ";", "if", "(", "d", "->", "vmode", "!=", "V4HImode", ")", "return", "false", ";", "if", "(", "d", "->", "testing_p", ")", "return", "true", ";", "for", "(", "i", "=", "mask", "=", "0", ";", "i", "<", "4", ";", "i", "++", ")", "mask", "|=", "(", "d", "->", "perm", "[", "i", "]", "&", "3", ")", "<<", "(", "i", "*", "2", ")", ";", "rmask", "=", "force_reg", "(", "SImode", ",", "GEN_INT", "(", "mask", ")", ")", ";", "if", "(", "d", "->", "one_vector_p", ")", "emit_insn", "(", "gen_loongson_pshufh", "(", "d", "->", "target", ",", "d", "->", "op0", ",", "rmask", ")", ")", ";", "else", "{", "rtx", "t0", ",", "t1", ",", "x", ",", "merge", ",", "rmerge", "[", "4", "]", ";", "t0", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "t1", "=", "gen_reg_rtx", "(", "V4HImode", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t1", ",", "d", "->", "op1", ",", "rmask", ")", ")", ";", "emit_insn", "(", "gen_loongson_pshufh", "(", "t0", ",", "d", "->", "op0", ",", "rmask", ")", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "4", ";", "++", "i", ")", "rmerge", "[", "i", "]", "=", "(", "d", "->", "perm", "[", "i", "]", "&", "4", "?", "constm1_rtx", ":", "const0_rtx", ")", ";", "merge", "=", "gen_rtx_CONST_VECTOR", "(", "V4HImode", ",", "gen_rtvec_v", "(", "4", ",", "rmerge", ")", ")", ";", "merge", "=", "force_reg", "(", "V4HImode", ",", "merge", ")", ";", "x", "=", "gen_rtx_AND", "(", "V4HImode", ",", "merge", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "t1", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_NOT", "(", "V4HImode", ",", "merge", ")", ";", "x", "=", "gen_rtx_AND", "(", "V4HImode", ",", "x", ",", "t0", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "t0", ",", "x", ")", ")", ";", "x", "=", "gen_rtx_IOR", "(", "V4HImode", ",", "t0", ",", "t1", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "d", "->", "target", ",", "x", ")", ")", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Recognize", "patterns", "for", "the", "Loongson", "PSHUFH", "instruction", "."], "TS_V_token": ["mips", "0", "4", "3", "2", "4", "0", "4", "4", "4"], "File": "mips", "Func": "mips_expand_vpc_loongson_pshufh", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32975, "Length": 311} {"ground_truth": ["", "static", "bool", "mips_expand_vselect", "(", "rtx", "target", ",", "rtx", "op0", ",", "const", "unsigned", "char", "*", "perm", ",", "unsigned", "nelt", ")", "{", "rtx", "rperm", "[", "MAX_VECT_LEN", "]", ",", "x", ";", "rtx_insn", "*", "insn", ";", "unsigned", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "rperm", "[", "i", "]", "=", "GEN_INT", "(", "perm", "[", "i", "]", ")", ";", "x", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec_v", "(", "nelt", ",", "rperm", ")", ")", ";", "x", "=", "gen_rtx_VEC_SELECT", "(", "GET_MODE", "(", "target", ")", ",", "op0", ",", "x", ")", ";", "x", "=", "gen_rtx_SET", "(", "target", ",", "x", ")", ";", "insn", "=", "emit_insn", "(", "x", ")", ";", "if", "(", "recog_memoized", "(", "insn", ")", "<", "0", ")", "{", "remove_insn", "(", "insn", ")", ";", "return", "false", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Construct", "(", "set", "target", "(", "vec_select", "op0", "(", "parallel", "perm", ")", ")", ")", "and", "return", "true", "if", "that", "'s", "a", "valid", "instruction", "in", "the", "active", "ISA", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_expand_vselect", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32976, "Length": 128} {"ground_truth": ["", "static", "bool", "mips_expand_vselect_vconcat", "(", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ",", "const", "unsigned", "char", "*", "perm", ",", "unsigned", "nelt", ")", "{", "machine_mode", "v2mode", ";", "rtx", "x", ";", "if", "(", "!", "GET_MODE_2XWIDER_MODE", "(", "GET_MODE", "(", "op0", ")", ")", ".", "exists", "(", "&", "v2mode", ")", ")", "return", "false", ";", "x", "=", "gen_rtx_VEC_CONCAT", "(", "v2mode", ",", "op0", ",", "op1", ")", ";", "return", "mips_expand_vselect", "(", "target", ",", "x", ",", "perm", ",", "nelt", ")", ";", "}", ""], "natrual_language": ["Similar", ",", "but", "generate", "a", "vec_concat", "from", "op0", "and", "op1", "as", "well", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_expand_vselect_vconcat", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32977, "Length": 73} {"ground_truth": ["", "static", "void", "mips_extra_live_on_entry", "(", "bitmap", "regs", ")", "{", "if", "(", "TARGET_USE_GOT", ")", "{", "if", "(", "!", "TARGET_ABSOLUTE_ABICALLS", ")", "bitmap_set_bit", "(", "regs", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "if", "(", "TARGET_MIPS16", ")", "bitmap_set_bit", "(", "regs", ",", "MIPS16_PIC_TEMP_REGNUM", ")", ";", "bitmap_set_bit", "(", "regs", ",", "GOT_VERSION_REGNUM", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_EXTRA_LIVE_ON_ENTRY", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_extra_live_on_entry", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32978, "Length": 45} {"ground_truth": ["", "static", "void", "mips_file_start", "(", "void", ")", "{", "default_file_start", "(", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.section .mdebug.%s\\n\\t.previous\\n\"", ",", "mips_mdebug_abi_name", "(", ")", ")", ";", "if", "(", "mips_abi", "==", "ABI_EABI", "||", "mips_abi", "==", "ABI_O64", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.section .gcc_compiled_long%d\\n\"", "\"\\t.previous\\n\"", ",", "TARGET_LONG64", "?", "64", ":", "32", ")", ";", "if", "(", "HAVE_AS_NAN", "||", "mips_nan", "!=", "MIPS_IEEE_754_DEFAULT", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.nan\\t%s\\n\"", ",", "mips_nan", "==", "MIPS_IEEE_754_2008", "?", "\"2008\"", ":", "\"legacy\"", ")", ";", "if", "(", "TARGET_NO_FLOAT", ")", "fputs", "(", "\"\\t.gnu_attribute 4, 0\\n\"", ",", "asm_out_file", ")", ";", ";", "else", "if", "(", "!", "TARGET_HARD_FLOAT_ABI", ")", "fputs", "(", "\"\\t.module\\tsoftfloat\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "!", "TARGET_DOUBLE_FLOAT", ")", "fputs", "(", "\"\\t.module\\tsinglefloat\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "TARGET_FLOATXX", ")", "fputs", "(", "\"\\t.module\\tfp=xx\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "TARGET_FLOAT64", ")", "fputs", "(", "\"\\t.module\\tfp=64\\n\"", ",", "asm_out_file", ")", ";", "else", "fputs", "(", "\"\\t.module\\tfp=32\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_ODD_SPREG", ")", "fputs", "(", "\"\\t.module\\toddspreg\\n\"", ",", "asm_out_file", ")", ";", "else", "fputs", "(", "\"\\t.module\\tnooddspreg\\n\"", ",", "asm_out_file", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.module\\tarch=%s\\n\"", ",", "mips_arch_info", "->", "name", ")", ";", "if", "(", "TARGET_DSPR2", ")", "fputs", "(", "\"\\t.module\\tdspr2\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "TARGET_DSP", ")", "fputs", "(", "\"\\t.module\\tdsp\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_EVA", ")", "fputs", "(", "\"\\t.module\\teva\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_MCU", ")", "fputs", "(", "\"\\t.module\\tmcu\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_MDMX", ")", "fputs", "(", "\"\\t.module\\tmdmx\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_MIPS3D", ")", "fputs", "(", "\"\\t.module\\tmips3d\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_MT", ")", "fputs", "(", "\"\\t.module\\tmt\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_SMARTMIPS", ")", "fputs", "(", "\"\\t.module\\tsmartmips\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_VIRT", ")", "fputs", "(", "\"\\t.module\\tvirt\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_MSA", ")", "fputs", "(", "\"\\t.module\\tmsa\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_XPA", ")", "fputs", "(", "\"\\t.module\\txpa\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_CRC", ")", "fputs", "(", "\"\\t.module\\tcrc\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_GINV", ")", "fputs", "(", "\"\\t.module\\tginv\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_LOONGSON_MMI", ")", "fputs", "(", "\"\\t.module\\tloongson-mmi\\n\"", ",", "asm_out_file", ")", ";", "if", "(", "TARGET_LOONGSON_EXT2", ")", "fputs", "(", "\"\\t.module\\tloongson-ext2\\n\"", ",", "asm_out_file", ")", ";", "else", "if", "(", "TARGET_LOONGSON_EXT", ")", "fputs", "(", "\"\\t.module\\tloongson-ext\\n\"", ",", "asm_out_file", ")", ";", "{", "int", "attr", ";", "if", "(", "TARGET_NO_FLOAT", ")", "attr", "=", "0", ";", "else", "if", "(", "!", "TARGET_HARD_FLOAT_ABI", ")", "attr", "=", "3", ";", "else", "if", "(", "!", "TARGET_DOUBLE_FLOAT", ")", "attr", "=", "2", ";", "else", "if", "(", "TARGET_FLOATXX", ")", "attr", "=", "5", ";", "else", "if", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", "&&", "TARGET_ODD_SPREG", ")", "attr", "=", "6", ";", "else", "if", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT64", ")", "attr", "=", "7", ";", "else", "attr", "=", "1", ";", "fprintf", "(", "asm_out_file", ",", "\"\\t.gnu_attribute 4, %d\\n\"", ",", "attr", ")", ";", "if", "(", "ISA_HAS_MSA", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.gnu_attribute 8, 1\\n\"", ")", ";", "}", "if", "(", "TARGET_ABICALLS", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"\\t.abicalls\\n\"", ")", ";", "if", "(", "TARGET_ABICALLS_PIC0", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.option\\tpic0\\n\"", ")", ";", "}", "if", "(", "flag_verbose_asm", ")", "fprintf", "(", "asm_out_file", ",", "\"\\n%s -G value = %d, Arch = %s, ISA = %d\\n\"", ",", "ASM_COMMENT_START", ",", "mips_small_data_threshold", ",", "mips_arch_info", "->", "name", ",", "mips_isa", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FILE_START", "."], "TS_V_token": ["mips", "\"\\t.section .mdebug.%s\\n\\t.previous\\n\"", "\"\\t.section .gcc_compiled_long%d\\n\"", "\"\\t.previous\\n\"", "64", "32", "\"\\t.nan\\t%s\\n\"", "\"2008\"", "\"legacy\"", "\"\\t.gnu_attribute 4, 0\\n\"", "\"\\t.module\\tsoftfloat\\n\"", "\"\\t.module\\tsinglefloat\\n\"", "\"\\t.module\\tfp=xx\\n\"", "\"\\t.module\\tfp=64\\n\"", "\"\\t.module\\tfp=32\\n\"", "\"\\t.module\\toddspreg\\n\"", "\"\\t.module\\tnooddspreg\\n\"", "\"\\t.module\\tarch=%s\\n\"", "\"\\t.module\\tdspr2\\n\"", "\"\\t.module\\tdsp\\n\"", "\"\\t.module\\teva\\n\"", "\"\\t.module\\tmcu\\n\"", "\"\\t.module\\tmdmx\\n\"", "\"\\t.module\\tmips3d\\n\"", "\"\\t.module\\tmt\\n\"", "\"\\t.module\\tsmartmips\\n\"", "\"\\t.module\\tvirt\\n\"", "\"\\t.module\\tmsa\\n\"", "\"\\t.module\\txpa\\n\"", "\"\\t.module\\tcrc\\n\"", "\"\\t.module\\tginv\\n\"", "\"\\t.module\\tloongson-mmi\\n\"", "\"\\t.module\\tloongson-ext2\\n\"", "\"\\t.module\\tloongson-ext\\n\"", "0", "3", "2", "5", "6", "7", "1", "\"\\t.gnu_attribute 4, %d\\n\"", "\"\\t.gnu_attribute 8, 1\\n\"", "\"\\t.abicalls\\n\"", "\"\\t.option\\tpic0\\n\"", "\"\\n%s -G value = %d, Arch = %s, ISA = %d\\n\""], "File": "mips", "Func": "mips_file_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32979, "Length": 488} {"ground_truth": ["", "void", "mips_final_prescan_insn", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "opvec", ",", "int", "noperands", ")", "{", "if", "(", "INSN_P", "(", "insn", ")", "&&", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "UNSPEC_VOLATILE", "&&", "XINT", "(", "PATTERN", "(", "insn", ")", ",", "1", ")", "==", "UNSPEC_CONSTTABLE", ")", "mips_set_text_contents_type", "(", "asm_out_file", ",", "\"__pool_\"", ",", "INTVAL", "(", "XVECEXP", "(", "PATTERN", "(", "insn", ")", ",", "0", ",", "0", ")", ")", ",", "FALSE", ")", ";", "if", "(", "mips_need_noat_wrapper_p", "(", "insn", ",", "opvec", ",", "noperands", ")", ")", "mips_push_asm_switch", "(", "&", "mips_noat", ")", ";", "}", ""], "natrual_language": ["Implement", "FINAL_PRESCAN_INSN", "."], "TS_V_token": ["mips", "1", "\"__pool_\"", "0", "0"], "File": "mips", "Func": "mips_final_prescan_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32980, "Length": 86} {"ground_truth": ["", "static", "bool", "mips_find_gp_ref", "(", "bool", "*", "cache", ",", "bool", "(", "*", "pred", ")", "(", "rtx_insn", "*", ")", ")", "{", "rtx_insn", "*", "insn", ",", "*", "subinsn", ";", "if", "(", "!", "*", "cache", ")", "{", "push_topmost_sequence", "(", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "if", "(", "USEFUL_INSN_P", "(", "subinsn", ")", "&&", "pred", "(", "subinsn", ")", ")", "{", "*", "cache", "=", "true", ";", "break", ";", "}", "pop_topmost_sequence", "(", ")", ";", "}", "return", "*", "cache", ";", "}", ""], "natrual_language": ["Return", "true", "if", "predicate", "PRED", "is", "true", "for", "at", "least", "one", "instruction", ".", "Cache", "the", "result", "in", "*", "CACHE", ",", "and", "assume", "that", "the", "result", "is", "true", "if", "*", "CACHE", "is", "already", "true", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_find_gp_ref", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32981, "Length": 91} {"ground_truth": ["", "static", "rtx", "mips_find_pic_call_symbol", "(", "rtx_insn", "*", "insn", ",", "rtx", "reg", ",", "bool", "recurse_p", ")", "{", "df_ref", "use", ";", "struct", "df_link", "*", "defs", ";", "rtx", "symbol", ";", "use", "=", "df_find_use", "(", "insn", ",", "regno_reg_rtx", "[", "REGNO", "(", "reg", ")", "]", ")", ";", "if", "(", "!", "use", ")", "return", "NULL_RTX", ";", "defs", "=", "DF_REF_CHAIN", "(", "use", ")", ";", "if", "(", "!", "defs", ")", "return", "NULL_RTX", ";", "symbol", "=", "mips_pic_call_symbol_from_set", "(", "defs", "->", "ref", ",", "reg", ",", "recurse_p", ")", ";", "if", "(", "!", "symbol", ")", "return", "NULL_RTX", ";", "for", "(", "defs", "=", "defs", "->", "next", ";", "defs", ";", "defs", "=", "defs", "->", "next", ")", "{", "rtx", "other", ";", "other", "=", "mips_pic_call_symbol_from_set", "(", "defs", "->", "ref", ",", "reg", ",", "recurse_p", ")", ";", "if", "(", "!", "rtx_equal_p", "(", "symbol", ",", "other", ")", ")", "return", "NULL_RTX", ";", "}", "return", "symbol", ";", "}", ""], "natrual_language": ["Find", "the", "definition", "of", "the", "use", "of", "REG", "in", "INSN", ".", "See", "if", "the", "definition", "is", "one", "of", "the", "ways", "we", "load", "a", "register", "with", "a", "symbol", "address", "for", "a", "mips_use_pic_fn_addr_reg_p", "call", ".", "If", "it", "is", "return", "the", "symbol", "reference", "of", "the", "function", ",", "otherwise", "return", "NULL_RTX", ".", "RECURSE_P", "is", "as", "for", "mips_pic_call_symbol_from_set", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_find_pic_call_symbol", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32982, "Length": 136} {"ground_truth": ["", "void", "mips_finish_declare_object", "(", "FILE", "*", "stream", ",", "tree", "decl", ",", "int", "top_level", ",", "int", "at_end", ")", "{", "const", "char", "*", "name", ";", "name", "=", "XSTR", "(", "XEXP", "(", "DECL_RTL", "(", "decl", ")", ",", "0", ")", ",", "0", ")", ";", "if", "(", "!", "flag_inhibit_size_directive", "&&", "DECL_SIZE", "(", "decl", ")", "!=", "0", "&&", "!", "at_end", "&&", "top_level", "&&", "DECL_INITIAL", "(", "decl", ")", "==", "error_mark_node", "&&", "!", "size_directive_output", ")", "{", "HOST_WIDE_INT", "size", ";", "size_directive_output", "=", "1", ";", "size", "=", "int_size_in_bytes", "(", "TREE_TYPE", "(", "decl", ")", ")", ";", "ASM_OUTPUT_SIZE_DIRECTIVE", "(", "stream", ",", "name", ",", "size", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "ASM_FINISH_DECLARE_OBJECT", ".", "This", "is", "generic", "ELF", "stuff", "."], "TS_V_token": ["mips", "0", "0", "0", "1"], "File": "mips", "Func": "mips_finish_declare_object", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32983, "Length": 95} {"ground_truth": ["", "static", "void", "mips_finish_stub", "(", "mips_one_only_stub", "*", "*", "stub_ptr", ")", "{", "mips_one_only_stub", "*", "stub", "=", "*", "stub_ptr", ";", "if", "(", "!", "stub", ")", "return", ";", "const", "char", "*", "name", "=", "stub", "->", "get_name", "(", ")", ";", "mips_start_unique_function", "(", "name", ")", ";", "mips_start_function_definition", "(", "name", ",", "false", ")", ";", "stub", "->", "output_body", "(", ")", ";", "mips_end_function_definition", "(", "name", ")", ";", "delete", "stub", ";", "*", "stub_ptr", "=", "0", ";", "}", ""], "natrual_language": ["If", "*", "STUB_PTR", "points", "to", "a", "stub", ",", "output", "a", "comdat-style", "definition", "for", "it", ",", "then", "free", "*", "STUB_PTR", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_finish_stub", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32984, "Length": 67} {"ground_truth": ["", "bool", "mips_fmadd_bypass", "(", "rtx_insn", "*", "out_insn", ",", "rtx_insn", "*", "in_insn", ")", "{", "int", "dst_reg", ",", "src_reg", ";", "gcc_assert", "(", "get_attr_type", "(", "in_insn", ")", "==", "TYPE_FMADD", ")", ";", "gcc_assert", "(", "get_attr_type", "(", "out_insn", ")", "==", "TYPE_FMADD", ")", ";", "extract_insn", "(", "in_insn", ")", ";", "dst_reg", "=", "REG_P", "(", "recog_data", ".", "operand", "[", "0", "]", ")", ";", "extract_insn", "(", "out_insn", ")", ";", "src_reg", "=", "REG_P", "(", "recog_data", ".", "operand", "[", "1", "]", ")", ";", "if", "(", "dst_reg", "==", "src_reg", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "destination", "of", "IN_INSN", "is", "used", "as", "add", "source", "in", "OUT_INSN", ".", "Both", "IN_INSN", "and", "OUT_INSN", "are", "of", "type", "fmadd", ".", "Example", ":", "madd.s", "dst", ",", "x", ",", "y", ",", "z", "madd.s", "a", ",", "dst", ",", "b", ",", "c"], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_fmadd_bypass", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32985, "Length": 84} {"ground_truth": ["", "static", "rtx", "mips_force_address", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "if", "(", "!", "mips_legitimate_address_p", "(", "mode", ",", "x", ",", "false", ")", ")", "x", "=", "force_reg", "(", "Pmode", ",", "x", ")", ";", "return", "x", ";", "}", ""], "natrual_language": ["If", "X", "is", "not", "a", "valid", "address", "for", "mode", "MODE", ",", "force", "it", "into", "a", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_force_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32986, "Length": 36} {"ground_truth": ["", "static", "rtx", "mips_force_binary", "(", "machine_mode", "mode", ",", "enum", "rtx_code", "code", ",", "rtx", "op0", ",", "rtx", "op1", ")", "{", "rtx", "reg", ";", "reg", "=", "gen_reg_rtx", "(", "mode", ")", ";", "mips_emit_binary", "(", "code", ",", "reg", ",", "op0", ",", "op1", ")", ";", "return", "reg", ";", "}", ""], "natrual_language": ["Compute", "(", "CODE", "OP0", "OP1", ")", "and", "store", "the", "result", "in", "a", "new", "register", "of", "mode", "MODE", ".", "Return", "that", "new", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_force_binary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32987, "Length": 43} {"ground_truth": ["", "static", "rtx", "mips_force_temporary", "(", "rtx", "dest", ",", "rtx", "value", ")", "{", "if", "(", "can_create_pseudo_p", "(", ")", ")", "return", "force_reg", "(", "Pmode", ",", "value", ")", ";", "else", "{", "mips_emit_move", "(", "dest", ",", "value", ")", ";", "return", "dest", ";", "}", "}", ""], "natrual_language": ["Copy", "VALUE", "to", "a", "register", "and", "return", "that", "register", ".", "If", "new", "psuedos", "are", "allowed", ",", "copy", "it", "into", "a", "new", "register", ",", "otherwise", "use", "DEST", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_force_temporary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32988, "Length": 39} {"ground_truth": ["", "static", "rtx", "mips_force_unary", "(", "machine_mode", "mode", ",", "enum", "rtx_code", "code", ",", "rtx", "op0", ")", "{", "rtx", "reg", ";", "reg", "=", "gen_reg_rtx", "(", "mode", ")", ";", "mips_emit_unary", "(", "code", ",", "reg", ",", "op0", ")", ";", "return", "reg", ";", "}", ""], "natrual_language": ["Compute", "(", "CODE", "OP0", ")", "and", "store", "the", "result", "in", "a", "new", "register", "of", "mode", "MODE", ".", "Return", "that", "new", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_force_unary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32989, "Length": 38} {"ground_truth": ["", "static", "void", "mips_for_each_saved_acc", "(", "HOST_WIDE_INT", "sp_offset", ",", "mips_save_restore_fn", "fn", ")", "{", "HOST_WIDE_INT", "offset", ";", "int", "regno", ";", "offset", "=", "cfun", "->", "machine", "->", "frame", ".", "acc_sp_offset", "-", "sp_offset", ";", "if", "(", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "acc_mask", ",", "0", ")", ")", "{", "mips_save_restore_reg", "(", "word_mode", ",", "LO_REGNUM", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "UNITS_PER_WORD", ";", "mips_save_restore_reg", "(", "word_mode", ",", "HI_REGNUM", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "UNITS_PER_WORD", ";", "}", "for", "(", "regno", "=", "DSP_ACC_REG_FIRST", ";", "regno", "<=", "DSP_ACC_REG_LAST", ";", "regno", "++", ")", "if", "(", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "acc_mask", ",", "(", "(", "regno", "-", "DSP_ACC_REG_FIRST", ")", "/", "2", ")", "+", "1", ")", ")", "{", "mips_save_restore_reg", "(", "word_mode", ",", "regno", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "UNITS_PER_WORD", ";", "}", "}", ""], "natrual_language": ["Call", "FN", "for", "each", "accumlator", "that", "is", "saved", "by", "the", "current", "function", ".", "SP_OFFSET", "is", "the", "offset", "of", "the", "current", "stack", "pointer", "from", "the", "start", "of", "the", "frame", "."], "TS_V_token": ["mips", "0", "2", "1"], "File": "mips", "Func": "mips_for_each_saved_acc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32990, "Length": 132} {"ground_truth": ["", "static", "void", "mips_for_each_saved_gpr_and_fpr", "(", "HOST_WIDE_INT", "sp_offset", ",", "mips_save_restore_fn", "fn", ")", "{", "machine_mode", "fpr_mode", ";", "int", "regno", ";", "const", "struct", "mips_frame_info", "*", "frame", "=", "&", "cfun", "->", "machine", "->", "frame", ";", "HOST_WIDE_INT", "offset", ";", "unsigned", "int", "mask", ";", "offset", "=", "frame", "->", "gp_sp_offset", "-", "sp_offset", ";", "mask", "=", "frame", "->", "mask", ";", "if", "(", "TARGET_MICROMIPS", ")", "umips_build_save_restore", "(", "fn", ",", "&", "mask", ",", "&", "offset", ")", ";", "for", "(", "regno", "=", "GP_REG_LAST", ";", "regno", ">=", "GP_REG_FIRST", ";", "regno", "--", ")", "if", "(", "BITSET_P", "(", "mask", ",", "regno", "-", "GP_REG_FIRST", ")", ")", "{", "if", "(", "regno", "==", "RETURN_ADDR_REGNUM", ")", "cfun", "->", "machine", "->", "frame", ".", "ra_fp_offset", "=", "offset", "+", "sp_offset", ";", "mips_save_restore_reg", "(", "word_mode", ",", "regno", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "UNITS_PER_WORD", ";", "}", "offset", "=", "cfun", "->", "machine", "->", "frame", ".", "fp_sp_offset", "-", "sp_offset", ";", "fpr_mode", "=", "(", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ")", ";", "for", "(", "regno", "=", "FP_REG_LAST", "-", "MAX_FPRS_PER_FMT", "+", "1", ";", "regno", ">=", "FP_REG_FIRST", ";", "regno", "-=", "MAX_FPRS_PER_FMT", ")", "if", "(", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "fmask", ",", "regno", "-", "FP_REG_FIRST", ")", ")", "{", "if", "(", "!", "TARGET_FLOAT64", "&&", "TARGET_DOUBLE_FLOAT", "&&", "(", "fixed_regs", "[", "regno", "]", "||", "fixed_regs", "[", "regno", "+", "1", "]", ")", ")", "{", "if", "(", "fixed_regs", "[", "regno", "]", ")", "mips_save_restore_reg", "(", "SFmode", ",", "regno", "+", "1", ",", "offset", ",", "fn", ")", ";", "else", "mips_save_restore_reg", "(", "SFmode", ",", "regno", ",", "offset", ",", "fn", ")", ";", "}", "else", "mips_save_restore_reg", "(", "fpr_mode", ",", "regno", ",", "offset", ",", "fn", ")", ";", "offset", "-=", "GET_MODE_SIZE", "(", "fpr_mode", ")", ";", "}", "}", ""], "natrual_language": ["Call", "FN", "for", "each", "register", "that", "is", "saved", "by", "the", "current", "function", ".", "SP_OFFSET", "is", "the", "offset", "of", "the", "current", "stack", "pointer", "from", "the", "start", "of", "the", "frame", "."], "TS_V_token": ["mips", "1", "1", "1"], "File": "mips", "Func": "mips_for_each_saved_gpr_and_fpr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32991, "Length": 259} {"ground_truth": ["", "static", "int", "mips_fpr_return_fields", "(", "const_tree", "valtype", ",", "tree", "*", "fields", ",", "bool", "*", "has_cxx_zero_width_bf", ",", "bool", "*", "has_cxx17_empty_base", ")", "{", "tree", "field", ";", "int", "i", ";", "if", "(", "!", "TARGET_NEWABI", ")", "return", "0", ";", "if", "(", "TREE_CODE", "(", "valtype", ")", "!=", "RECORD_TYPE", ")", "return", "0", ";", "i", "=", "0", ";", "for", "(", "field", "=", "TYPE_FIELDS", "(", "valtype", ")", ";", "field", "!=", "0", ";", "field", "=", "DECL_CHAIN", "(", "field", ")", ")", "{", "if", "(", "TREE_CODE", "(", "field", ")", "!=", "FIELD_DECL", ")", "continue", ";", "if", "(", "cxx17_empty_base_field_p", "(", "field", ")", ")", "{", "*", "has_cxx17_empty_base", "=", "true", ";", "continue", ";", "}", "if", "(", "DECL_FIELD_CXX_ZERO_WIDTH_BIT_FIELD", "(", "field", ")", ")", "{", "*", "has_cxx_zero_width_bf", "=", "true", ";", "continue", ";", "}", "if", "(", "!", "SCALAR_FLOAT_TYPE_P", "(", "TREE_TYPE", "(", "field", ")", ")", ")", "return", "0", ";", "if", "(", "i", "==", "2", ")", "return", "0", ";", "fields", "[", "i", "++", "]", "=", "field", ";", "}", "return", "i", ";", "}", ""], "natrual_language": ["See", "whether", "VALTYPE", "is", "a", "record", "whose", "fields", "should", "be", "returned", "in", "floating-point", "registers", ".", "If", "so", ",", "return", "the", "number", "of", "fields", "and", "list", "them", "in", "FIELDS", "(", "which", "should", "have", "two", "elements", ")", ".", "Return", "0", "otherwise", ".", "For", "n32", "&", "n64", ",", "a", "structure", "with", "one", "or", "two", "fields", "is", "returned", "in", "floating-point", "registers", "as", "long", "as", "every", "field", "has", "a", "floating-point", "type", ".", "The", "C++", "FE", "used", "to", "remove", "zero-width", "bit-fields", "in", "GCC", "11", "and", "earlier", ".", "To", "make", "a", "proper", "diagnostic", ",", "this", "function", "will", "set", "HAS_CXX_ZERO_WIDTH_BF", "to", "true", "once", "a", "C++", "zero-width", "bit-field", "shows", "up", ",", "and", "then", "ignore", "it", ".", "We", "had", "failed", "to", "ignore", "C++17", "empty", "bases", "in", "GCC", "7", ",", "8", ",", "9", ",", "10", ",", "and", "11", ".", "This", "caused", "an", "ABI", "incompatibility", "between", "C++14", "and", "C++17", ".", "This", "is", "fixed", "now", "and", "to", "make", "a", "proper", "diagnostic", ",", "this", "function", "will", "set", "HAS_CXX17_EMPTY_BASE", "to", "true", "once", "a", "C++17", "empty", "base", "shows", "up", ",", "and", "then", "ignore", "it", ".", "The", "caller", "should", "use", "the", "value", "of", "HAS_CXX17_EMPTY_BASE", "and/or", "HAS_CXX_ZERO_WIDTH_BF", "to", "emit", "a", "proper", "-Wpsabi", "inform", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "2", "0"], "File": "mips", "Func": "mips_fpr_return_fields", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32992, "Length": 150} {"ground_truth": ["", "static", "int", "mips_fp_div_cost", "(", "machine_mode", "mode", ")", "{", "return", "mode", "==", "DFmode", "?", "mips_cost", "->", "fp_div_df", ":", "mips_cost", "->", "fp_div_sf", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "floating-point", "divisions", "of", "mode", "MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_fp_div_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32993, "Length": 22} {"ground_truth": ["", "static", "int", "mips_fp_mult_cost", "(", "machine_mode", "mode", ")", "{", "return", "mode", "==", "DFmode", "?", "mips_cost", "->", "fp_mult_df", ":", "mips_cost", "->", "fp_mult_sf", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "floating-point", "multiplications", "of", "mode", "MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_fp_mult_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32994, "Length": 22} {"ground_truth": ["", "static", "void", "mips_frame_barrier", "(", "void", ")", "{", "emit_clobber", "(", "gen_frame_mem", "(", "BLKmode", ",", "stack_pointer_rtx", ")", ")", ";", "}", ""], "natrual_language": ["Emit", "an", "optimisation", "barrier", "for", "accesses", "to", "the", "current", "frame", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_frame_barrier", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32995, "Length": 18} {"ground_truth": ["", "static", "bool", "mips_frame_pointer_required", "(", "void", ")", "{", "if", "(", "cfun", "->", "calls_alloca", ")", "return", "true", ";", "if", "(", "TARGET_MIPS16", ")", "{", "mips_compute_frame_info", "(", ")", ";", "if", "(", "!", "SMALL_OPERAND", "(", "cfun", "->", "machine", "->", "frame", ".", "total_size", ")", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FRAME_POINTER_REQUIRED", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_frame_pointer_required", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32996, "Length": 47} {"ground_truth": ["", "static", "rtx", "mips_frame_set", "(", "rtx", "mem", ",", "rtx", "reg", ")", "{", "rtx", "set", ";", "set", "=", "gen_rtx_SET", "(", "mem", ",", "reg", ")", ";", "RTX_FRAME_RELATED_P", "(", "set", ")", "=", "1", ";", "return", "set", ";", "}", ""], "natrual_language": ["Return", "a", "frame-related", "rtx", "that", "stores", "register", "REGNO", "at", "(", "SP", "+", "OFFSET", ")", ".", "The", "expression", "should", "only", "be", "used", "to", "store", "single", "registers", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_frame_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32997, "Length": 34} {"ground_truth": ["", "static", "void", "mips_function_arg_advance", "(", "cumulative_args_t", "cum_v", ",", "const", "function_arg_info", "&", "arg", ")", "{", "CUMULATIVE_ARGS", "*", "cum", "=", "get_cumulative_args", "(", "cum_v", ")", ";", "struct", "mips_arg_info", "info", ";", "mips_get_arg_info", "(", "&", "info", ",", "cum", ",", "arg", ".", "mode", ",", "arg", ".", "type", ",", "arg", ".", "named", ")", ";", "if", "(", "!", "info", ".", "fpr_p", ")", "cum", "->", "gp_reg_found", "=", "true", ";", "if", "(", "cum", "->", "arg_number", "<", "2", "&&", "info", ".", "fpr_p", ")", "cum", "->", "fp_code", "+=", "(", "arg", ".", "mode", "==", "SFmode", "?", "1", ":", "2", ")", "<<", "(", "cum", "->", "arg_number", "*", "2", ")", ";", "if", "(", "mips_abi", "!=", "ABI_EABI", "||", "!", "info", ".", "fpr_p", ")", "cum", "->", "num_gprs", "=", "info", ".", "reg_offset", "+", "info", ".", "reg_words", ";", "else", "if", "(", "info", ".", "reg_words", ">", "0", ")", "cum", "->", "num_fprs", "+=", "MAX_FPRS_PER_FMT", ";", "if", "(", "info", ".", "stack_words", ">", "0", ")", "cum", "->", "stack_words", "=", "info", ".", "stack_offset", "+", "info", ".", "stack_words", ";", "cum", "->", "arg_number", "++", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_ARG_ADVANCE", "."], "TS_V_token": ["mips", "2", "1", "2", "2", "0", "0"], "File": "mips", "Func": "mips_function_arg_advance", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32998, "Length": 159} {"ground_truth": ["", "static", "unsigned", "int", "mips_function_arg_boundary", "(", "machine_mode", "mode", ",", "const_tree", "type", ")", "{", "unsigned", "int", "alignment", ";", "alignment", "=", "type", "?", "TYPE_ALIGN", "(", "type", ")", ":", "GET_MODE_ALIGNMENT", "(", "mode", ")", ";", "if", "(", "alignment", "<", "PARM_BOUNDARY", ")", "alignment", "=", "PARM_BOUNDARY", ";", "if", "(", "alignment", ">", "STACK_BOUNDARY", ")", "alignment", "=", "STACK_BOUNDARY", ";", "return", "alignment", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_ARG_BOUNDARY", ".", "Every", "parameter", "gets", "at", "least", "PARM_BOUNDARY", "bits", "of", "alignment", ",", "but", "will", "be", "given", "anything", "up", "to", "STACK_BOUNDARY", "bits", "if", "the", "type", "requires", "it", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_function_arg_boundary", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 32999, "Length": 54} {"ground_truth": ["", "static", "pad_direction", "mips_function_arg_padding", "(", "machine_mode", "mode", ",", "const_tree", "type", ")", "{", "if", "(", "!", "BYTES_BIG_ENDIAN", ")", "return", "PAD_UPWARD", ";", "if", "(", "type", "!=", "0", "?", "(", "INTEGRAL_TYPE_P", "(", "type", ")", "||", "POINTER_TYPE_P", "(", "type", ")", "||", "FIXED_POINT_TYPE_P", "(", "type", ")", ")", ":", "(", "SCALAR_INT_MODE_P", "(", "mode", ")", "||", "ALL_SCALAR_FIXED_POINT_MODE_P", "(", "mode", ")", ")", ")", "return", "PAD_DOWNWARD", ";", "if", "(", "mips_abi", "==", "ABI_O64", ")", "if", "(", "type", "!=", "0", "?", "FLOAT_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "return", "PAD_DOWNWARD", ";", "if", "(", "mips_abi", "!=", "ABI_EABI", ")", "return", "PAD_UPWARD", ";", "if", "(", "mode", "!=", "BLKmode", "?", "GET_MODE_BITSIZE", "(", "mode", ")", ">=", "PARM_BOUNDARY", ":", "int_size_in_bytes", "(", "type", ")", ">=", "(", "PARM_BOUNDARY", "/", "BITS_PER_UNIT", ")", ")", "return", "PAD_UPWARD", ";", "return", "PAD_DOWNWARD", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_ARG_PADDING", ";", "return", "PAD_UPWARD", "if", "the", "first", "byte", "of", "the", "stack", "slot", "has", "useful", "data", ",", "PAD_DOWNWARD", "if", "the", "last", "byte", "does", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_function_arg_padding", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33000, "Length": 124} {"ground_truth": ["", "static", "bool", "mips_function_ok_for_sibcall", "(", "tree", "decl", ",", "tree", "exp", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "!", "TARGET_SIBCALLS", ")", "return", "false", ";", "if", "(", "mips_interrupt_type_p", "(", "TREE_TYPE", "(", "current_function_decl", ")", ")", ")", "return", "false", ";", "if", "(", "decl", "&&", "const_call_insn_operand", "(", "XEXP", "(", "DECL_RTL", "(", "decl", ")", ",", "0", ")", ",", "VOIDmode", ")", "&&", "mips_call_may_need_jalx_p", "(", "decl", ")", ")", "return", "false", ";", "if", "(", "decl", "&&", "TARGET_CALL_SAVED_GP", "&&", "!", "TARGET_ABICALLS_PIC0", "&&", "!", "targetm", ".", "binds_local_p", "(", "decl", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["We", "can", "handle", "any", "sibcall", "when", "TARGET_SIBCALLS", "is", "true", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_function_ok_for_sibcall", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33001, "Length": 84} {"ground_truth": ["", "static", "section", "*", "mips_function_rodata_section", "(", "tree", "decl", ")", "{", "if", "(", "!", "TARGET_ABICALLS", "||", "TARGET_ABSOLUTE_ABICALLS", "||", "TARGET_GPWORD", ")", "return", "default_function_rodata_section", "(", "decl", ")", ";", "if", "(", "decl", "&&", "DECL_SECTION_NAME", "(", "decl", ")", ")", "{", "const", "char", "*", "name", "=", "DECL_SECTION_NAME", "(", "decl", ")", ";", "if", "(", "DECL_COMDAT_GROUP", "(", "decl", ")", "&&", "strncmp", "(", "name", ",", "\".gnu.linkonce.t.\"", ",", "16", ")", "==", "0", ")", "{", "char", "*", "rname", "=", "ASTRDUP", "(", "name", ")", ";", "rname", "[", "14", "]", "=", "'d'", ";", "return", "get_section", "(", "rname", ",", "SECTION_LINKONCE", "|", "SECTION_WRITE", ",", "decl", ")", ";", "}", "else", "if", "(", "flag_function_sections", "&&", "flag_data_sections", "&&", "strncmp", "(", "name", ",", "\".text.\"", ",", "6", ")", "==", "0", ")", "{", "char", "*", "rname", "=", "ASTRDUP", "(", "name", ")", ";", "memcpy", "(", "rname", "+", "1", ",", "\"data\"", ",", "4", ")", ";", "return", "get_section", "(", "rname", ",", "SECTION_WRITE", ",", "decl", ")", ";", "}", "}", "return", "data_section", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_FUNCTION_RODATA_SECTION", ".", "The", "complication", "here", "is", "that", ",", "with", "the", "combination", "TARGET_ABICALLS", "&", "&", "!", "TARGET_GPWORD", ",", "jump", "tables", "will", "use", "absolute", "addresses", ",", "and", "should", "therefore", "not", "be", "included", "in", "the", "read-only", "part", "of", "a", "DSO", ".", "Handle", "such", "cases", "by", "selecting", "a", "normal", "data", "section", "instead", "of", "a", "read-only", "one", ".", "The", "logic", "apes", "that", "in", "default_function_rodata_section", "."], "TS_V_token": ["mips", "\".gnu.linkonce.t.\"", "16", "0", "14", "\".text.\"", "6", "0", "1", "\"data\"", "4"], "File": "mips", "Func": "mips_function_rodata_section", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33002, "Length": 147} {"ground_truth": ["", "static", "rtx", "mips_function_value", "(", "const_tree", "valtype", ",", "const_tree", "fn_decl_or_type", ",", "bool", "outgoing", "ATTRIBUTE_UNUSED", ")", "{", "return", "mips_function_value_1", "(", "valtype", ",", "fn_decl_or_type", ",", "VOIDmode", ")", ";", "}", ""], "natrual_language": ["Implement", "FUNCTION_VALUE", "and", "LIBCALL_VALUE", ".", "For", "normal", "calls", ",", "VALTYPE", "is", "the", "return", "type", "and", "MODE", "is", "VOIDmode", ".", "For", "libcalls", ",", "VALTYPE", "is", "null", "and", "MODE", "is", "the", "mode", "of", "the", "return", "value", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_function_value", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33003, "Length": 26} {"ground_truth": ["", "static", "rtx", "mips_function_value_1", "(", "const_tree", "valtype", ",", "const_tree", "fn_decl_or_type", ",", "machine_mode", "mode", ")", "{", "if", "(", "valtype", ")", "{", "tree", "fields", "[", "2", "]", ";", "int", "unsigned_p", ";", "const_tree", "func", ";", "if", "(", "fn_decl_or_type", "&&", "DECL_P", "(", "fn_decl_or_type", ")", ")", "func", "=", "fn_decl_or_type", ";", "else", "func", "=", "NULL", ";", "mode", "=", "TYPE_MODE", "(", "valtype", ")", ";", "unsigned_p", "=", "TYPE_UNSIGNED", "(", "valtype", ")", ";", "mode", "=", "promote_function_mode", "(", "valtype", ",", "mode", ",", "&", "unsigned_p", ",", "func", ",", "1", ")", ";", "bool", "has_cxx_zero_width_bf", "=", "false", ";", "bool", "has_cxx17_empty_base", "=", "false", ";", "int", "use_fpr", "=", "mips_fpr_return_fields", "(", "valtype", ",", "fields", ",", "&", "has_cxx_zero_width_bf", ",", "&", "has_cxx17_empty_base", ")", ";", "if", "(", "TARGET_HARD_FLOAT", "&&", "warn_psabi", "&&", "has_cxx_zero_width_bf", "&&", "!", "has_cxx17_empty_base", "&&", "use_fpr", "!=", "0", ")", "{", "static", "unsigned", "last_reported_type_uid", ";", "unsigned", "uid", "=", "TYPE_UID", "(", "TYPE_MAIN_VARIANT", "(", "valtype", ")", ")", ";", "if", "(", "uid", "!=", "last_reported_type_uid", ")", "{", "static", "const", "char", "*", "url", "=", "CHANGES_ROOT_URL", "\"gcc-12/changes.html#zero_width_bitfields\"", ";", "inform", "(", "input_location", ",", "\"the ABI for returning a value containing \"", "\"zero-width bit-fields but otherwise an aggregate \"", "\"with only one or two floating-point fields was \"", "\"changed in GCC %{12.1%}\"", ",", "url", ")", ";", "last_reported_type_uid", "=", "uid", ";", "}", "}", "if", "(", "has_cxx_zero_width_bf", ")", "use_fpr", "=", "0", ";", "if", "(", "TARGET_HARD_FLOAT", "&&", "warn_psabi", "&&", "use_fpr", "!=", "0", "&&", "has_cxx17_empty_base", ")", "{", "static", "unsigned", "last_reported_type_uid", ";", "unsigned", "uid", "=", "TYPE_UID", "(", "TYPE_MAIN_VARIANT", "(", "valtype", ")", ")", ";", "if", "(", "uid", "!=", "last_reported_type_uid", ")", "{", "static", "const", "char", "*", "url", "=", "CHANGES_ROOT_URL", "\"gcc-12/changes.html#mips_cxx17_empty_bases\"", ";", "inform", "(", "input_location", ",", "\"the ABI for returning a value with C++17 empty \"", "\"bases but otherwise an aggregate with only one or \"", "\"two floating-point fields was changed in GCC \"", "\"%{12.1%}\"", ",", "url", ")", ";", "last_reported_type_uid", "=", "uid", ";", "}", "}", "switch", "(", "use_fpr", ")", "{", "case", "1", ":", "return", "mips_return_fpr_single", "(", "mode", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "0", "]", ")", ")", ")", ";", "case", "2", ":", "return", "mips_return_fpr_pair", "(", "mode", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "0", "]", ")", ")", ",", "int_byte_position", "(", "fields", "[", "0", "]", ")", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "fields", "[", "1", "]", ")", ")", ",", "int_byte_position", "(", "fields", "[", "1", "]", ")", ")", ";", "}", "if", "(", "mips_return_in_msb", "(", "valtype", ")", ")", "{", "HOST_WIDE_INT", "size", "=", "int_size_in_bytes", "(", "valtype", ")", ";", "if", "(", "size", "%", "UNITS_PER_WORD", "!=", "0", ")", "{", "size", "+=", "UNITS_PER_WORD", "-", "size", "%", "UNITS_PER_WORD", ";", "mode", "=", "int_mode_for_size", "(", "size", "*", "BITS_PER_UNIT", ",", "0", ")", ".", "require", "(", ")", ";", "}", "}", "if", "(", "mips_abi", "!=", "ABI_EABI", "&&", "!", "FLOAT_TYPE_P", "(", "valtype", ")", ")", "return", "gen_rtx_REG", "(", "mode", ",", "GP_RETURN", ")", ";", "}", "if", "(", "!", "TARGET_MIPS16", ")", "{", "if", "(", "mode", "==", "TFmode", ")", "return", "mips_return_fpr_pair", "(", "mode", ",", "DImode", ",", "0", ",", "DImode", ",", "GET_MODE_SIZE", "(", "mode", ")", "/", "2", ")", ";", "if", "(", "mips_return_mode_in_fpr_p", "(", "mode", ")", ")", "{", "if", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", ")", "return", "mips_return_fpr_pair", "(", "mode", ",", "GET_MODE_INNER", "(", "mode", ")", ",", "0", ",", "GET_MODE_INNER", "(", "mode", ")", ",", "GET_MODE_SIZE", "(", "mode", ")", "/", "2", ")", ";", "else", "return", "gen_rtx_REG", "(", "mode", ",", "FP_RETURN", ")", ";", "}", "}", "return", "gen_rtx_REG", "(", "mode", ",", "GP_RETURN", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_VALUE", "and", "TARGET_LIBCALL_VALUE", ".", "For", "normal", "calls", ",", "VALTYPE", "is", "the", "return", "type", "and", "MODE", "is", "VOIDmode", ".", "For", "libcalls", ",", "VALTYPE", "is", "null", "and", "MODE", "is", "the", "mode", "of", "the", "return", "value", "."], "TS_V_token": ["mips", "2", "1", "0", "\"gcc-12/changes.html#zero_width_bitfields\"", "\"the ABI for returning a value containing \"", "\"zero-width bit-fields but otherwise an aggregate \"", "\"with only one or two floating-point fields was \"", "\"changed in GCC %{12.1%}\"", "0", "0", "\"gcc-12/changes.html#mips_cxx17_empty_bases\"", "\"the ABI for returning a value with C++17 empty \"", "\"bases but otherwise an aggregate with only one or \"", "\"two floating-point fields was changed in GCC \"", "\"%{12.1%}\"", "1", "0", "2", "0", "0", "1", "1", "0", "0", "0", "2", "0", "2"], "File": "mips", "Func": "mips_function_value_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33004, "Length": 477} {"ground_truth": ["", "static", "bool", "mips_function_value_regno_p", "(", "const", "unsigned", "int", "regno", ")", "{", "if", "(", "regno", "==", "GP_RETURN", "||", "regno", "==", "FP_RETURN", "||", "(", "FP_RETURN", "!=", "GP_RETURN", "&&", "regno", "==", "FP_RETURN", "+", "2", ")", ")", "return", "true", ";", "if", "(", "(", "mips_abi", "==", "ABI_32", "&&", "TARGET_FLOAT32", ")", "&&", "FP_RETURN", "!=", "GP_RETURN", "&&", "(", "regno", "==", "FP_RETURN", "+", "1", "||", "regno", "==", "FP_RETURN", "+", "3", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "TARGET_FUNCTION_VALUE_REGNO_P", ".", "On", "the", "MIPS", ",", "R2", "R3", "and", "F0", "F2", "are", "the", "only", "register", "thus", "used", "."], "TS_V_token": ["mips", "2", "1", "3"], "File": "mips", "Func": "mips_function_value_regno_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33005, "Length": 70} {"ground_truth": ["", "rtx", "mips_gen_const_int_vector", "(", "machine_mode", "mode", ",", "HOST_WIDE_INT", "val", ")", "{", "rtx", "c", "=", "gen_int_mode", "(", "val", ",", "GET_MODE_INNER", "(", "mode", ")", ")", ";", "return", "gen_const_vec_duplicate", "(", "mode", ",", "c", ")", ";", "}", ""], "natrual_language": ["Return", "a", "const_int", "vector", "of", "VAL", "with", "mode", "MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_gen_const_int_vector", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33006, "Length": 32} {"ground_truth": ["", "static", "rtx", "mips_gen_const_int_vector_shuffle", "(", "machine_mode", "mode", ",", "int", "val", ")", "{", "int", "nunits", "=", "GET_MODE_NUNITS", "(", "mode", ")", ";", "int", "nsets", "=", "nunits", "/", "4", ";", "rtx", "elts", "[", "MAX_VECT_LEN", "]", ";", "int", "set", "=", "0", ";", "int", "i", ",", "j", ";", "for", "(", "j", "=", "0", ";", "j", "<", "nsets", ";", "j", "++", ",", "set", "=", "4", "*", "j", ")", "for", "(", "i", "=", "0", ";", "i", "<", "4", ";", "i", "++", ")", "elts", "[", "set", "+", "i", "]", "=", "GEN_INT", "(", "set", "+", "(", "(", "val", ">>", "(", "2", "*", "i", ")", ")", "&", "0x3", ")", ")", ";", "return", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec_v", "(", "nunits", ",", "elts", ")", ")", ";", "}", ""], "natrual_language": ["Return", "a", "vector", "of", "repeated", "4-element", "sets", "generated", "from", "immediate", "VAL", "in", "mode", "MODE", "."], "TS_V_token": ["mips", "4", "0", "0", "4", "0", "4", "2", "0x3"], "File": "mips", "Func": "mips_gen_const_int_vector_shuffle", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33007, "Length": 114} {"ground_truth": ["", "static", "void", "mips_get_arg_info", "(", "struct", "mips_arg_info", "*", "info", ",", "const", "CUMULATIVE_ARGS", "*", "cum", ",", "machine_mode", "mode", ",", "const_tree", "type", ",", "bool", "named", ")", "{", "bool", "doubleword_aligned_p", ";", "unsigned", "int", "num_bytes", ",", "num_words", ",", "max_regs", ";", "num_bytes", "=", "type", "?", "int_size_in_bytes", "(", "type", ")", ":", "GET_MODE_SIZE", "(", "mode", ")", ";", "num_words", "=", "(", "num_bytes", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "switch", "(", "mips_abi", ")", "{", "case", "ABI_EABI", ":", "info", "->", "fpr_p", "=", "(", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "mode", "==", "V2SFmode", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_FPVALUE", ")", ";", "break", ";", "case", "ABI_32", ":", "case", "ABI_O64", ":", "gcc_assert", "(", "TARGET_PAIRED_SINGLE_FLOAT", "||", "mode", "!=", "V2SFmode", ")", ";", "info", "->", "fpr_p", "=", "(", "!", "cum", "->", "gp_reg_found", "&&", "cum", "->", "arg_number", "<", "2", "&&", "(", "type", "==", "0", "||", "SCALAR_FLOAT_TYPE_P", "(", "type", ")", "||", "VECTOR_FLOAT_TYPE_P", "(", "type", ")", ")", "&&", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "mode", "==", "V2SFmode", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "UNITS_PER_FPVALUE", ")", ";", "break", ";", "case", "ABI_N32", ":", "case", "ABI_64", ":", "gcc_assert", "(", "TARGET_PAIRED_SINGLE_FLOAT", "||", "mode", "!=", "V2SFmode", ")", ";", "info", "->", "fpr_p", "=", "(", "named", "&&", "(", "type", "==", "0", "||", "FLOAT_TYPE_P", "(", "type", ")", ")", "&&", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", "||", "mode", "==", "V2SFmode", ")", "&&", "GET_MODE_UNIT_SIZE", "(", "mode", ")", "<=", "UNITS_PER_FPVALUE", ")", ";", "if", "(", "info", "->", "fpr_p", "&&", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", "&&", "GET_MODE_UNIT_SIZE", "(", "mode", ")", "<", "UNITS_PER_FPVALUE", ")", "{", "if", "(", "cum", "->", "num_gprs", ">=", "MAX_ARGS_IN_REGISTERS", "-", "1", ")", "info", "->", "fpr_p", "=", "false", ";", "else", "num_words", "=", "2", ";", "}", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "doubleword_aligned_p", "=", "(", "mips_function_arg_boundary", "(", "mode", ",", "type", ")", ">", "BITS_PER_WORD", ")", ";", "info", "->", "reg_offset", "=", "(", "mips_abi", "==", "ABI_EABI", "&&", "info", "->", "fpr_p", "?", "cum", "->", "num_fprs", ":", "cum", "->", "num_gprs", ")", ";", "if", "(", "doubleword_aligned_p", ")", "info", "->", "reg_offset", "+=", "info", "->", "reg_offset", "&", "1", ";", "info", "->", "stack_offset", "=", "cum", "->", "stack_words", ";", "if", "(", "doubleword_aligned_p", ")", "info", "->", "stack_offset", "+=", "info", "->", "stack_offset", "&", "1", ";", "max_regs", "=", "MAX_ARGS_IN_REGISTERS", "-", "info", "->", "reg_offset", ";", "info", "->", "reg_words", "=", "MIN", "(", "num_words", ",", "max_regs", ")", ";", "info", "->", "stack_words", "=", "num_words", "-", "info", "->", "reg_words", ";", "}", ""], "natrual_language": ["Fill", "INFO", "with", "information", "about", "a", "single", "argument", ".", "CUM", "is", "the", "cumulative", "state", "for", "earlier", "arguments", ".", "MODE", "is", "the", "mode", "of", "this", "argument", "and", "TYPE", "is", "its", "type", "(", "if", "known", ")", ".", "NAMED", "is", "true", "if", "this", "is", "a", "named", "(", "fixed", ")", "argument", "rather", "than", "a", "variable", "one", "."], "TS_V_token": ["mips", "1", "2", "0", "0", "1", "2", "1", "1"], "File": "mips", "Func": "mips_get_arg_info", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33008, "Length": 381} {"ground_truth": ["", "static", "unsigned", "int", "mips_get_compress_mode", "(", "tree", "decl", ")", "{", "unsigned", "int", "flags", ",", "force_on", ";", "flags", "=", "mips_base_compression_flags", ";", "if", "(", "decl", ")", "{", "tree", "parent", "=", "decl_function_context", "(", "decl", ")", ";", "if", "(", "parent", ")", "decl", "=", "parent", ";", "force_on", "=", "mips_get_compress_on_flags", "(", "DECL_ATTRIBUTES", "(", "decl", ")", ")", ";", "if", "(", "force_on", ")", "return", "force_on", ";", "flags", "&=", "~", "mips_get_compress_off_flags", "(", "DECL_ATTRIBUTES", "(", "decl", ")", ")", ";", "}", "return", "flags", ";", "}", ""], "natrual_language": ["Return", "the", "compression", "mode", "that", "should", "be", "used", "for", "function", "DECL", ".", "Return", "the", "ambient", "setting", "if", "DECL", "is", "null", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_get_compress_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33009, "Length": 73} {"ground_truth": ["", "static", "unsigned", "int", "mips_get_compress_off_flags", "(", "tree", "attributes", ")", "{", "unsigned", "int", "flags", "=", "0", ";", "if", "(", "lookup_attribute", "(", "\"nocompression\"", ",", "attributes", ")", "!=", "NULL", ")", "flags", "|=", "MASK_MIPS16", "|", "MASK_MICROMIPS", ";", "if", "(", "lookup_attribute", "(", "\"nomips16\"", ",", "attributes", ")", "!=", "NULL", ")", "flags", "|=", "MASK_MIPS16", ";", "if", "(", "lookup_attribute", "(", "\"nomicromips\"", ",", "attributes", ")", "!=", "NULL", ")", "flags", "|=", "MASK_MICROMIPS", ";", "return", "flags", ";", "}", ""], "natrual_language": ["Return", "the", "set", "of", "compression", "modes", "that", "are", "explicitly", "forbidden", "by", "the", "attributes", "in", "ATTRIBUTES", "."], "TS_V_token": ["mips", "0", "\"nocompression\"", "\"nomips16\"", "\"nomicromips\""], "File": "mips", "Func": "mips_get_compress_off_flags", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33010, "Length": 66} {"ground_truth": ["", "static", "const", "char", "*", "mips_get_compress_off_name", "(", "unsigned", "int", "flags", ")", "{", "if", "(", "flags", "==", "MASK_MIPS16", ")", "return", "\"nomips16\"", ";", "if", "(", "flags", "==", "MASK_MICROMIPS", ")", "return", "\"nomicromips\"", ";", "return", "\"nocompression\"", ";", "}", ""], "natrual_language": ["Return", "the", "attribute", "name", "that", "forbids", "MASK_MIPS16", "and", "MASK_MICROMIPS", "flags", "FLAGS", "."], "TS_V_token": ["mips", "\"nomips16\"", "\"nomicromips\"", "\"nocompression\""], "File": "mips", "Func": "mips_get_compress_off_name", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33011, "Length": 33} {"ground_truth": ["", "static", "unsigned", "int", "mips_get_compress_on_flags", "(", "tree", "attributes", ")", "{", "unsigned", "int", "flags", "=", "0", ";", "if", "(", "lookup_attribute", "(", "\"mips16\"", ",", "attributes", ")", "!=", "NULL", ")", "flags", "|=", "MASK_MIPS16", ";", "if", "(", "lookup_attribute", "(", "\"micromips\"", ",", "attributes", ")", "!=", "NULL", ")", "flags", "|=", "MASK_MICROMIPS", ";", "return", "flags", ";", "}", ""], "natrual_language": ["Return", "the", "set", "of", "compression", "modes", "that", "are", "explicitly", "required", "by", "the", "attributes", "in", "ATTRIBUTES", "."], "TS_V_token": ["mips", "0", "\"mips16\"", "\"micromips\""], "File": "mips", "Func": "mips_get_compress_on_flags", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33012, "Length": 49} {"ground_truth": ["", "static", "const", "char", "*", "mips_get_compress_on_name", "(", "unsigned", "int", "flags", ")", "{", "if", "(", "flags", "==", "MASK_MIPS16", ")", "return", "\"mips16\"", ";", "return", "\"micromips\"", ";", "}", ""], "natrual_language": ["Return", "the", "attribute", "name", "associated", "with", "MASK_MIPS16", "and", "MASK_MICROMIPS", "flags", "FLAGS", "."], "TS_V_token": ["mips", "\"mips16\"", "\"micromips\""], "File": "mips", "Func": "mips_get_compress_on_name", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33013, "Length": 24} {"ground_truth": ["", "static", "void", "mips_get_cprestore_base_and_offset", "(", "rtx", "*", "base", ",", "HOST_WIDE_INT", "*", "offset", ",", "bool", "load_p", ")", "{", "const", "struct", "mips_frame_info", "*", "frame", ";", "frame", "=", "&", "cfun", "->", "machine", "->", "frame", ";", "if", "(", "frame_pointer_needed", "&&", "!", "(", "TARGET_CPRESTORE_DIRECTIVE", "&&", "!", "load_p", ")", ")", "{", "*", "base", "=", "hard_frame_pointer_rtx", ";", "*", "offset", "=", "frame", "->", "args_size", "-", "frame", "->", "hard_frame_pointer_offset", ";", "}", "else", "{", "*", "base", "=", "stack_pointer_rtx", ";", "*", "offset", "=", "frame", "->", "args_size", ";", "}", "}", ""], "natrual_language": ["Fill", "*", "BASE", "and", "*", "OFFSET", "such", "that", "*", "BASE", "+", "*", "OFFSET", "refers", "to", "the", "cprestore", "slot", ".", "LOAD_P", "is", "true", "if", "the", "caller", "wants", "to", "load", "from", "the", "cprestore", "slot", ";", "it", "is", "false", "if", "the", "caller", "wants", "to", "store", "to", "the", "slot", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_get_cprestore_base_and_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33014, "Length": 77} {"ground_truth": ["", "bool", "mips_get_pic_call_symbol", "(", "rtx", "*", "operands", ",", "int", "args_size_opno", ")", "{", "rtx", "args_size", ",", "symbol", ";", "if", "(", "!", "TARGET_RELAX_PIC_CALLS", "||", "args_size_opno", "==", "-", "1", ")", "return", "false", ";", "args_size", "=", "operands", "[", "args_size_opno", "]", ";", "if", "(", "GET_CODE", "(", "args_size", ")", "!=", "UNSPEC", ")", "return", "false", ";", "gcc_assert", "(", "XINT", "(", "args_size", ",", "1", ")", "==", "UNSPEC_CALL_ATTR", ")", ";", "symbol", "=", "XVECEXP", "(", "args_size", ",", "0", ",", "1", ")", ";", "gcc_assert", "(", "GET_CODE", "(", "symbol", ")", "==", "SYMBOL_REF", ")", ";", "operands", "[", "args_size_opno", "]", "=", "symbol", ";", "return", "true", ";", "}", ""], "natrual_language": ["OPERANDS", "[", "ARGS_SIZE_OPNO", "]", "is", "the", "arg_size", "operand", "of", "a", "CALL", "expression", ".", "See", "if", "instead", "of", "the", "arg_size", "argument", "it", "contains", "the", "call", "attributes", ".", "If", "yes", "return", "true", "along", "with", "setting", "OPERANDS", "[", "ARGS_SIZE_OPNO", "]", "to", "the", "function", "symbol", "from", "the", "call", "attributes", ".", "Also", "return", "false", "if", "ARGS_SIZE_OPNO", "is", "-1", "."], "TS_V_token": ["mips", "1", "1", "0", "1"], "File": "mips", "Func": "mips_get_pic_call_symbol", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33015, "Length": 92} {"ground_truth": ["", "static", "fixed_size_mode", "mips_get_reg_raw_mode", "(", "int", "regno", ")", "{", "if", "(", "TARGET_FLOATXX", "&&", "FP_REG_P", "(", "regno", ")", ")", "return", "DFmode", ";", "return", "default_get_reg_raw_mode", "(", "regno", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_GET_RAW_RESULT_MODE", "and", "TARGET_GET_RAW_ARG_MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_get_reg_raw_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33016, "Length": 27} {"ground_truth": ["", "static", "rtx", "mips_get_sync_operand", "(", "rtx", "*", "operands", ",", "int", "index", ",", "rtx", "default_value", ")", "{", "if", "(", "index", ">", "0", ")", "default_value", "=", "operands", "[", "index", "-", "1", "]", ";", "return", "default_value", ";", "}", ""], "natrual_language": ["OPERANDS", "are", "the", "operands", "to", "a", "sync", "loop", "instruction", "and", "INDEX", "is", "the", "value", "of", "the", "one", "of", "the", "sync_", "*", "attributes", ".", "Return", "the", "operand", "referred", "to", "by", "the", "attribute", ",", "or", "DEFAULT_VALUE", "if", "the", "insn", "does", "n't", "have", "the", "associated", "attribute", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_get_sync_operand", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33017, "Length": 34} {"ground_truth": ["", "static", "bool", "mips_get_unaligned_mem", "(", "rtx", "op", ",", "HOST_WIDE_INT", "width", ",", "HOST_WIDE_INT", "bitpos", ",", "rtx", "*", "left", ",", "rtx", "*", "right", ")", "{", "rtx", "first", ",", "last", ";", "if", "(", "width", "!=", "32", "&&", "(", "!", "TARGET_64BIT", "||", "width", "!=", "64", ")", ")", "return", "false", ";", "if", "(", "bitpos", "%", "BITS_PER_UNIT", "!=", "0", ")", "return", "false", ";", "if", "(", "MEM_ALIGN", "(", "op", ")", ">=", "width", ")", "return", "false", ";", "first", "=", "adjust_address", "(", "op", ",", "QImode", ",", "0", ")", ";", "last", "=", "adjust_address", "(", "op", ",", "QImode", ",", "width", "/", "BITS_PER_UNIT", "-", "1", ")", ";", "if", "(", "TARGET_BIG_ENDIAN", ")", "*", "left", "=", "first", ",", "*", "right", "=", "last", ";", "else", "*", "left", "=", "last", ",", "*", "right", "=", "first", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "it", "is", "possible", "to", "use", "left/right", "accesses", "for", "a", "bitfield", "of", "WIDTH", "bits", "starting", "BITPOS", "bits", "into", "*", "OP", ".", "When", "returning", "true", ",", "update", "*", "OP", ",", "*", "LEFT", "and", "*", "RIGHT", "as", "follows", ":", "*", "OP", "is", "a", "BLKmode", "reference", "to", "the", "whole", "field", ".", "*", "LEFT", "is", "a", "QImode", "reference", "to", "the", "first", "byte", "if", "big", "endian", "or", "the", "last", "byte", "if", "little", "endian", ".", "This", "address", "can", "be", "used", "in", "the", "left-side", "instructions", "(", "lwl", ",", "swl", ",", "ldl", ",", "sdl", ")", ".", "*", "RIGHT", "is", "a", "QImode", "reference", "to", "the", "opposite", "end", "of", "the", "field", "and", "can", "be", "used", "in", "the", "patterning", "right-side", "instruction", "."], "TS_V_token": ["mips", "32", "64", "0", "0", "1"], "File": "mips", "Func": "mips_get_unaligned_mem", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33018, "Length": 123} {"ground_truth": ["", "static", "unsigned", "int", "mips_global_pointer", "(", "void", ")", "{", "unsigned", "int", "regno", ";", "if", "(", "!", "TARGET_USE_GOT", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "mips_cfun_has_inflexible_gp_ref_p", "(", ")", ")", "return", "GLOBAL_POINTER_REGNUM", ";", "if", "(", "TARGET_ABSOLUTE_JUMPS", "&&", "!", "mips_cfun_has_flexible_gp_ref_p", "(", ")", ")", "return", "INVALID_REGNUM", ";", "if", "(", "TARGET_CALL_SAVED_GP", "&&", "crtl", "->", "is_leaf", ")", "for", "(", "regno", "=", "GP_REG_FIRST", ";", "regno", "<=", "GP_REG_LAST", ";", "regno", "++", ")", "if", "(", "!", "df_regs_ever_live_p", "(", "regno", ")", "&&", "call_used_regs", "[", "regno", "]", "&&", "!", "fixed_regs", "[", "regno", "]", "&&", "regno", "!=", "PIC_FUNCTION_ADDR_REGNUM", ")", "return", "regno", ";", "return", "GLOBAL_POINTER_REGNUM", ";", "}", ""], "natrual_language": ["Return", "the", "register", "that", "should", "be", "used", "as", "the", "global", "pointer", "within", "this", "function", ".", "Return", "0", "if", "the", "function", "does", "n't", "need", "a", "global", "pointer", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_global_pointer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33019, "Length": 92} {"ground_truth": ["", "static", "bool", "mips_global_symbol_p", "(", "const_rtx", "x", ")", "{", "const_tree", "decl", "=", "SYMBOL_REF_DECL", "(", "x", ")", ";", "if", "(", "!", "decl", ")", "return", "!", "SYMBOL_REF_LOCAL_P", "(", "x", ")", "||", "SYMBOL_REF_EXTERNAL_P", "(", "x", ")", ";", "return", "DECL_P", "(", "decl", ")", "&&", "(", "TREE_PUBLIC", "(", "decl", ")", "||", "DECL_WEAK", "(", "decl", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "SYMBOL_REF", "X", "is", "associated", "with", "a", "global", "symbol", "(", "in", "the", "STB_GLOBAL", "sense", ")", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_global_symbol_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33020, "Length": 52} {"ground_truth": ["", "rtx", "mips_got_load", "(", "rtx", "temp", ",", "rtx", "addr", ",", "enum", "mips_symbol_type", "type", ")", "{", "rtx", "base", ",", "high", ",", "lo_sum_symbol", ";", "base", "=", "mips_pic_base_register", "(", "temp", ")", ";", "if", "(", "temp", "!=", "NULL", "&&", "reg_overlap_mentioned_p", "(", "base", ",", "temp", ")", ")", "temp", "=", "NULL", ";", "high", "=", "mips_unspec_offset_high", "(", "temp", ",", "base", ",", "addr", ",", "type", ")", ";", "lo_sum_symbol", "=", "mips_unspec_address", "(", "addr", ",", "type", ")", ";", "if", "(", "type", "==", "SYMBOL_GOTOFF_CALL", ")", "return", "mips_unspec_call", "(", "high", ",", "lo_sum_symbol", ")", ";", "else", "return", "PMODE_INSN", "(", "gen_unspec_got", ",", "(", "high", ",", "lo_sum_symbol", ")", ")", ";", "}", ""], "natrual_language": ["Create", "and", "return", "a", "GOT", "reference", "of", "type", "TYPE", "for", "address", "ADDR", ".", "TEMP", ",", "if", "nonnull", ",", "is", "a", "scratch", "Pmode", "base", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_got_load", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33021, "Length": 95} {"ground_truth": ["", "static", "bool", "mips_got_symbol_type_p", "(", "enum", "mips_symbol_type", "type", ")", "{", "switch", "(", "type", ")", "{", "case", "SYMBOL_GOT_PAGE_OFST", ":", "case", "SYMBOL_GOT_DISP", ":", "return", "true", ";", "default", ":", "return", "false", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "symbols", "of", "type", "TYPE", "require", "a", "GOT", "access", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_got_symbol_type_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33022, "Length": 30} {"ground_truth": ["", "machine_mode", "mips_hard_regno_caller_save_mode", "(", "unsigned", "int", "regno", ",", "unsigned", "int", "nregs", ",", "machine_mode", "mode", ")", "{", "if", "(", "mode", "==", "VOIDmode", ")", "return", "choose_hard_reg_mode", "(", "regno", ",", "nregs", ",", "NULL", ")", ";", "else", "return", "mode", ";", "}", ""], "natrual_language": ["Implement", "HARD_REGNO_CALLER_SAVE_MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_hard_regno_caller_save_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33023, "Length": 36} {"ground_truth": ["", "static", "bool", "mips_hard_regno_call_part_clobbered", "(", "unsigned", "int", ",", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "if", "(", "TARGET_FLOATXX", "&&", "hard_regno_nregs", "(", "regno", ",", "mode", ")", "==", "1", "&&", "FP_REG_P", "(", "regno", ")", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", "return", "true", ";", "if", "(", "ISA_HAS_MSA", "&&", "FP_REG_P", "(", "regno", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", ">", "8", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "TARGET_HARD_REGNO_CALL_PART_CLOBBERED", ".", "Odd-numbered", "single-precision", "registers", "are", "not", "considered", "callee-saved", "for", "o32", "FPXX", "as", "they", "will", "be", "clobbered", "when", "run", "on", "an", "FR=1", "FPU", ".", "MSA", "vector", "registers", "with", "MODE", ">", "64", "bits", "are", "part", "clobbered", "too", "."], "TS_V_token": ["mips", "1", "1", "0", "8"], "File": "mips", "Func": "mips_hard_regno_call_part_clobbered", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33024, "Length": 67} {"ground_truth": ["", "static", "bool", "mips_hard_regno_mode_ok", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "return", "mips_hard_regno_mode_ok_p", "[", "mode", "]", "[", "regno", "]", ";", "}", ""], "natrual_language": ["Implement", "TARGET_HARD_REGNO_MODE_OK", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_hard_regno_mode_ok", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33025, "Length": 22} {"ground_truth": ["", "static", "bool", "mips_hard_regno_mode_ok_uncached", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "unsigned", "int", "size", ";", "enum", "mode_class", "mclass", ";", "if", "(", "mode", "==", "CCV2mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "2", "==", "0", ")", ";", "if", "(", "mode", "==", "CCV4mode", ")", "return", "(", "ISA_HAS_8CC", "&&", "ST_REG_P", "(", "regno", ")", "&&", "(", "regno", "-", "ST_REG_FIRST", ")", "%", "4", "==", "0", ")", ";", "if", "(", "mode", "==", "CCmode", ")", "return", "ISA_HAS_8CC", "?", "ST_REG_P", "(", "regno", ")", ":", "regno", "==", "FPSW_REGNUM", ";", "size", "=", "GET_MODE_SIZE", "(", "mode", ")", ";", "mclass", "=", "GET_MODE_CLASS", "(", "mode", ")", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "mode", "!=", "CCFmode", "&&", "!", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "(", "(", "regno", "-", "GP_REG_FIRST", ")", "&", "1", ")", "==", "0", "||", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "true", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "(", "(", "(", "regno", "-", "FP_REG_FIRST", ")", "%", "MAX_FPRS_PER_FMT", ")", "==", "0", "||", "(", "MIN_FPRS_PER_FMT", "==", "1", "&&", "size", "<=", "UNITS_PER_FPREG", ")", ")", ")", "{", "if", "(", "TARGET_O32_FP64A_ABI", "&&", "size", "<=", "4", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", "return", "false", ";", "if", "(", "mode", "==", "CCFmode", ")", "return", "!", "(", "TARGET_FLOATXX", "&&", "(", "regno", "&", "1", ")", "!=", "0", ")", ";", "if", "(", "TARGET_LOONGSON_MMI", "&&", "(", "mode", "==", "V2SImode", "||", "mode", "==", "V4HImode", "||", "mode", "==", "V8QImode", "||", "mode", "==", "DImode", ")", ")", "return", "true", ";", "if", "(", "mclass", "==", "MODE_FLOAT", "||", "mclass", "==", "MODE_COMPLEX_FLOAT", "||", "mclass", "==", "MODE_VECTOR_FLOAT", ")", "return", "size", "<=", "UNITS_PER_FPVALUE", ";", "if", "(", "mclass", "==", "MODE_INT", ")", "return", "size", ">=", "MIN_UNITS_PER_WORD", "&&", "size", "<=", "UNITS_PER_FPREG", ";", "}", "if", "(", "ACC_REG_P", "(", "regno", ")", "&&", "!", "VECTOR_MODE_P", "(", "mode", ")", "&&", "(", "INTEGRAL_MODE_P", "(", "mode", ")", "||", "ALL_FIXED_POINT_MODE_P", "(", "mode", ")", ")", ")", "{", "if", "(", "MD_REG_P", "(", "regno", ")", ")", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", ")", "return", "regno", "==", "(", "size", "<=", "UNITS_PER_WORD", "?", "LO_REGNUM", ":", "MD_REG_FIRST", ")", ";", "}", "else", "{", "if", "(", "size", "<=", "UNITS_PER_WORD", ")", "return", "true", ";", "if", "(", "size", "<=", "UNITS_PER_WORD", "*", "2", "&&", "(", "(", "regno", "-", "DSP_ACC_REG_FIRST", ")", "&", "1", ")", "==", "0", ")", "return", "true", ";", "}", "}", "if", "(", "ALL_COP_REG_P", "(", "regno", ")", ")", "return", "mclass", "==", "MODE_INT", "&&", "size", "<=", "UNITS_PER_WORD", ";", "if", "(", "regno", "==", "GOT_VERSION_REGNUM", ")", "return", "mode", "==", "SImode", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "register", "REGNO", "can", "store", "a", "value", "of", "mode", "MODE", ".", "The", "result", "of", "this", "function", "is", "cached", "in", "mips_hard_regno_mode_ok", "."], "TS_V_token": ["mips", "2", "0", "4", "0", "1", "0", "0", "1", "4", "1", "0", "1", "0", "2", "2", "1", "0"], "File": "mips", "Func": "mips_hard_regno_mode_ok_uncached", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33026, "Length": 407} {"ground_truth": ["", "static", "unsigned", "int", "mips_hard_regno_nregs", "(", "unsigned", "int", "regno", ",", "machine_mode", "mode", ")", "{", "if", "(", "ST_REG_P", "(", "regno", ")", ")", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "3", ")", "/", "4", ";", "if", "(", "FP_REG_P", "(", "regno", ")", ")", "{", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "1", ";", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_FPREG", "-", "1", ")", "/", "UNITS_PER_FPREG", ";", "}", "return", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "UNITS_PER_WORD", "-", "1", ")", "/", "UNITS_PER_WORD", ";", "}", ""], "natrual_language": ["Implement", "HARD_REGNO_NREGS", "."], "TS_V_token": ["mips", "3", "4", "1", "1", "1"], "File": "mips", "Func": "mips_hard_regno_nregs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33027, "Length": 80} {"ground_truth": ["", "bool", "mips_hard_regno_rename_ok", "(", "unsigned", "int", "old_reg", "ATTRIBUTE_UNUSED", ",", "unsigned", "int", "new_reg", ")", "{", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", "&&", "!", "df_regs_ever_live_p", "(", "new_reg", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "nonzero", "if", "register", "OLD_REG", "can", "be", "renamed", "to", "register", "NEW_REG", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_hard_regno_rename_ok", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33028, "Length": 34} {"ground_truth": ["", "bool", "mips_hard_regno_scratch_ok", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "cfun", "->", "machine", "->", "interrupt_handler_p", "&&", "!", "df_regs_ever_live_p", "(", "regno", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "nonzero", "if", "register", "REGNO", "can", "be", "used", "as", "a", "scratch", "register", "in", "peephole2", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_hard_regno_scratch_ok", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33029, "Length": 29} {"ground_truth": ["", "static", "hashval_t", "mips_hash_base", "(", "rtx", "base", ")", "{", "int", "do_not_record_p", ";", "return", "hash_rtx", "(", "base", ",", "GET_MODE", "(", "base", ")", ",", "&", "do_not_record_p", ",", "NULL", ",", "false", ")", ";", "}", ""], "natrual_language": ["Return", "a", "hash", "value", "for", "SYMBOL_REF", "or", "LABEL_REF", "BASE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_hash_base", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33030, "Length": 30} {"ground_truth": ["", "static", "bool", "mips_has_long_branch_p", "(", "void", ")", "{", "rtx_insn", "*", "insn", ",", "*", "subinsn", ";", "int", "normal_length", ";", "shorten_branches", "(", "get_insns", "(", ")", ")", ";", "normal_length", "=", "(", "TARGET_MIPS16", "?", "4", ":", "8", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "if", "(", "JUMP_P", "(", "subinsn", ")", "&&", "get_attr_length", "(", "subinsn", ")", ">", "normal_length", "&&", "(", "any_condjump_p", "(", "subinsn", ")", "||", "any_uncondjump_p", "(", "subinsn", ")", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "function", "has", "a", "long", "branch", "instruction", "."], "TS_V_token": ["mips", "4", "8"], "File": "mips", "Func": "mips_has_long_branch_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33031, "Length": 90} {"ground_truth": ["", "int", "mips_idiv_insns", "(", "machine_mode", "mode", ")", "{", "int", "count", ";", "count", "=", "1", ";", "if", "(", "TARGET_CHECK_ZERO_DIV", ")", "{", "if", "(", "GENERATE_DIVIDE_TRAPS", "&&", "!", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "count", "++", ";", "else", "count", "+=", "2", ";", "}", "if", "(", "TARGET_FIX_R4000", "||", "TARGET_FIX_R4400", ")", "count", "++", ";", "return", "count", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "for", "an", "integer", "division", "."], "TS_V_token": ["mips", "1", "2"], "File": "mips", "Func": "mips_idiv_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33032, "Length": 51} {"ground_truth": ["", "static", "int", "mips_immediate_operand_p", "(", "int", "code", ",", "HOST_WIDE_INT", "x", ")", "{", "switch", "(", "code", ")", "{", "case", "ASHIFT", ":", "case", "ASHIFTRT", ":", "case", "LSHIFTRT", ":", "return", "true", ";", "case", "ROTATE", ":", "case", "ROTATERT", ":", "return", "ISA_HAS_ROR", ";", "case", "AND", ":", "case", "IOR", ":", "case", "XOR", ":", "return", "SMALL_OPERAND_UNSIGNED", "(", "x", ")", ";", "case", "PLUS", ":", "case", "LT", ":", "case", "LTU", ":", "return", "SMALL_OPERAND", "(", "x", ")", ";", "case", "EQ", ":", "case", "NE", ":", "case", "GT", ":", "case", "GTU", ":", "return", "x", "==", "0", ";", "case", "GE", ":", "case", "GEU", ":", "return", "x", "==", "1", ";", "case", "LE", ":", "return", "SMALL_OPERAND", "(", "x", "+", "1", ")", ";", "case", "LEU", ":", "return", "SMALL_OPERAND", "(", "x", "+", "1", ")", "&&", "x", "+", "1", "!=", "0", ";", "case", "SIGN_EXTRACT", ":", "case", "ZERO_EXTRACT", ":", "return", "ISA_HAS_EXT_INS", ";", "default", ":", "return", "x", "==", "0", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "there", "is", "a", "non-MIPS16", "instruction", "that", "implements", "CODE", "and", "if", "that", "instruction", "accepts", "X", "as", "an", "immediate", "operand", "."], "TS_V_token": ["mips", "0", "1", "1", "1", "1", "0", "0"], "File": "mips", "Func": "mips_immediate_operand_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33033, "Length": 141} {"ground_truth": ["", "HOST_WIDE_INT", "mips_initial_elimination_offset", "(", "int", "from", ",", "int", "to", ")", "{", "HOST_WIDE_INT", "offset", ";", "mips_compute_frame_info", "(", ")", ";", "switch", "(", "from", ")", "{", "case", "FRAME_POINTER_REGNUM", ":", "if", "(", "FRAME_GROWS_DOWNWARD", ")", "offset", "=", "(", "cfun", "->", "machine", "->", "frame", ".", "args_size", "+", "cfun", "->", "machine", "->", "frame", ".", "cprestore_size", "+", "cfun", "->", "machine", "->", "frame", ".", "var_size", ")", ";", "else", "offset", "=", "0", ";", "break", ";", "case", "ARG_POINTER_REGNUM", ":", "offset", "=", "cfun", "->", "machine", "->", "frame", ".", "arg_pointer_offset", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "to", "==", "HARD_FRAME_POINTER_REGNUM", ")", "offset", "-=", "cfun", "->", "machine", "->", "frame", ".", "hard_frame_pointer_offset", ";", "return", "offset", ";", "}", ""], "natrual_language": ["Implement", "INITIAL_ELIMINATION_OFFSET", ".", "FROM", "is", "either", "the", "frame", "pointer", "or", "argument", "pointer", ".", "TO", "is", "either", "the", "stack", "pointer", "or", "hard", "frame", "pointer", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_initial_elimination_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33034, "Length": 106} {"ground_truth": ["", "static", "void", "mips_init_builtins", "(", "void", ")", "{", "const", "struct", "mips_builtin_description", "*", "d", ";", "unsigned", "int", "i", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "mips_builtins", ")", ";", "i", "++", ")", "{", "d", "=", "&", "mips_builtins", "[", "i", "]", ";", "if", "(", "d", "->", "avail", "(", ")", ")", "{", "mips_builtin_decls", "[", "i", "]", "=", "add_builtin_function", "(", "d", "->", "name", ",", "mips_build_function_type", "(", "d", "->", "function_type", ")", ",", "i", ",", "BUILT_IN_MD", ",", "NULL", ",", "NULL", ")", ";", "if", "(", "mips_builtin_decls", "[", "i", "]", "&&", "d", "->", "is_pure", ")", "DECL_PURE_P", "(", "mips_builtin_decls", "[", "i", "]", ")", "=", "1", ";", "mips_get_builtin_decl_index", "[", "d", "->", "icode", "]", "=", "i", ";", "}", "}", "}", ""], "natrual_language": ["Init", "builtin", "functions", ".", "This", "is", "called", "from", "TARGET_INIT_BUILTIN", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_init_builtins", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33035, "Length": 111} {"ground_truth": ["", "void", "mips_init_cumulative_args", "(", "CUMULATIVE_ARGS", "*", "cum", ",", "tree", "fntype", ")", "{", "memset", "(", "cum", ",", "0", ",", "sizeof", "(", "*", "cum", ")", ")", ";", "cum", "->", "prototype", "=", "(", "fntype", "&&", "prototype_p", "(", "fntype", ")", ")", ";", "cum", "->", "gp_reg_found", "=", "(", "cum", "->", "prototype", "&&", "stdarg_p", "(", "fntype", ")", ")", ";", "}", ""], "natrual_language": ["Initialize", "*", "CUM", "for", "a", "call", "to", "a", "function", "of", "type", "FNTYPE", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_init_cumulative_args", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33036, "Length": 53} {"ground_truth": ["", "static", "void", "mips_init_dfa_post_cycle_insn", "(", "void", ")", "{", "if", "(", "TUNE_LOONGSON_2EF", ")", "mips_ls2_init_dfa_post_cycle_insn", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCHED_INIT_DFA_POST_CYCLE_INSN", "hook", ".", "Init", "data", "used", "in", "mips_dfa_post_advance_cycle", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_init_dfa_post_cycle_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33037, "Length": 16} {"ground_truth": ["", "static", "void", "mips_init_libfuncs", "(", "void", ")", "{", "if", "(", "TARGET_FIX_VR4120", ")", "{", "set_optab_libfunc", "(", "sdiv_optab", ",", "SImode", ",", "\"__vr4120_divsi3\"", ")", ";", "set_optab_libfunc", "(", "smod_optab", ",", "SImode", ",", "\"__vr4120_modsi3\"", ")", ";", "}", "if", "(", "TARGET_MIPS16", "&&", "TARGET_HARD_FLOAT_ABI", ")", "{", "set_optab_libfunc", "(", "add_optab", ",", "SFmode", ",", "\"__mips16_addsf3\"", ")", ";", "set_optab_libfunc", "(", "sub_optab", ",", "SFmode", ",", "\"__mips16_subsf3\"", ")", ";", "set_optab_libfunc", "(", "smul_optab", ",", "SFmode", ",", "\"__mips16_mulsf3\"", ")", ";", "set_optab_libfunc", "(", "sdiv_optab", ",", "SFmode", ",", "\"__mips16_divsf3\"", ")", ";", "set_optab_libfunc", "(", "eq_optab", ",", "SFmode", ",", "\"__mips16_eqsf2\"", ")", ";", "set_optab_libfunc", "(", "ne_optab", ",", "SFmode", ",", "\"__mips16_nesf2\"", ")", ";", "set_optab_libfunc", "(", "gt_optab", ",", "SFmode", ",", "\"__mips16_gtsf2\"", ")", ";", "set_optab_libfunc", "(", "ge_optab", ",", "SFmode", ",", "\"__mips16_gesf2\"", ")", ";", "set_optab_libfunc", "(", "lt_optab", ",", "SFmode", ",", "\"__mips16_ltsf2\"", ")", ";", "set_optab_libfunc", "(", "le_optab", ",", "SFmode", ",", "\"__mips16_lesf2\"", ")", ";", "set_optab_libfunc", "(", "unord_optab", ",", "SFmode", ",", "\"__mips16_unordsf2\"", ")", ";", "set_conv_libfunc", "(", "sfix_optab", ",", "SImode", ",", "SFmode", ",", "\"__mips16_fix_truncsfsi\"", ")", ";", "set_conv_libfunc", "(", "sfloat_optab", ",", "SFmode", ",", "SImode", ",", "\"__mips16_floatsisf\"", ")", ";", "set_conv_libfunc", "(", "ufloat_optab", ",", "SFmode", ",", "SImode", ",", "\"__mips16_floatunsisf\"", ")", ";", "if", "(", "TARGET_DOUBLE_FLOAT", ")", "{", "set_optab_libfunc", "(", "add_optab", ",", "DFmode", ",", "\"__mips16_adddf3\"", ")", ";", "set_optab_libfunc", "(", "sub_optab", ",", "DFmode", ",", "\"__mips16_subdf3\"", ")", ";", "set_optab_libfunc", "(", "smul_optab", ",", "DFmode", ",", "\"__mips16_muldf3\"", ")", ";", "set_optab_libfunc", "(", "sdiv_optab", ",", "DFmode", ",", "\"__mips16_divdf3\"", ")", ";", "set_optab_libfunc", "(", "eq_optab", ",", "DFmode", ",", "\"__mips16_eqdf2\"", ")", ";", "set_optab_libfunc", "(", "ne_optab", ",", "DFmode", ",", "\"__mips16_nedf2\"", ")", ";", "set_optab_libfunc", "(", "gt_optab", ",", "DFmode", ",", "\"__mips16_gtdf2\"", ")", ";", "set_optab_libfunc", "(", "ge_optab", ",", "DFmode", ",", "\"__mips16_gedf2\"", ")", ";", "set_optab_libfunc", "(", "lt_optab", ",", "DFmode", ",", "\"__mips16_ltdf2\"", ")", ";", "set_optab_libfunc", "(", "le_optab", ",", "DFmode", ",", "\"__mips16_ledf2\"", ")", ";", "set_optab_libfunc", "(", "unord_optab", ",", "DFmode", ",", "\"__mips16_unorddf2\"", ")", ";", "set_conv_libfunc", "(", "sext_optab", ",", "DFmode", ",", "SFmode", ",", "\"__mips16_extendsfdf2\"", ")", ";", "set_conv_libfunc", "(", "trunc_optab", ",", "SFmode", ",", "DFmode", ",", "\"__mips16_truncdfsf2\"", ")", ";", "set_conv_libfunc", "(", "sfix_optab", ",", "SImode", ",", "DFmode", ",", "\"__mips16_fix_truncdfsi\"", ")", ";", "set_conv_libfunc", "(", "sfloat_optab", ",", "DFmode", ",", "SImode", ",", "\"__mips16_floatsidf\"", ")", ";", "set_conv_libfunc", "(", "ufloat_optab", ",", "DFmode", ",", "SImode", ",", "\"__mips16_floatunsidf\"", ")", ";", "}", "}", "if", "(", "TARGET_MIPS16", ")", "{", "synchronize_libfunc", "=", "init_one_libfunc", "(", "\"__sync_synchronize\"", ")", ";", "init_sync_libfuncs", "(", "UNITS_PER_WORD", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_INIT_LIBFUNCS", "."], "TS_V_token": ["mips", "\"__vr4120_divsi3\"", "\"__vr4120_modsi3\"", "\"__mips16_addsf3\"", "\"__mips16_subsf3\"", "\"__mips16_mulsf3\"", "\"__mips16_divsf3\"", "\"__mips16_eqsf2\"", "\"__mips16_nesf2\"", "\"__mips16_gtsf2\"", "\"__mips16_gesf2\"", "\"__mips16_ltsf2\"", "\"__mips16_lesf2\"", "\"__mips16_unordsf2\"", "\"__mips16_fix_truncsfsi\"", "\"__mips16_floatsisf\"", "\"__mips16_floatunsisf\"", "\"__mips16_adddf3\"", "\"__mips16_subdf3\"", "\"__mips16_muldf3\"", "\"__mips16_divdf3\"", "\"__mips16_eqdf2\"", "\"__mips16_nedf2\"", "\"__mips16_gtdf2\"", "\"__mips16_gedf2\"", "\"__mips16_ltdf2\"", "\"__mips16_ledf2\"", "\"__mips16_unorddf2\"", "\"__mips16_extendsfdf2\"", "\"__mips16_truncdfsf2\"", "\"__mips16_fix_truncdfsi\"", "\"__mips16_floatsidf\"", "\"__mips16_floatunsidf\"", "\"__sync_synchronize\""], "File": "mips", "Func": "mips_init_libfuncs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33038, "Length": 350} {"ground_truth": ["", "static", "struct", "machine_function", "*", "mips_init_machine_status", "(", "void", ")", "{", "return", "ggc_cleared_alloc", "<", "machine_function", ">", "(", ")", ";", "}", ""], "natrual_language": ["Allocate", "a", "chunk", "of", "memory", "for", "per-function", "machine-dependent", "data", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_init_machine_status", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33039, "Length": 18} {"ground_truth": ["", "static", "void", "mips_init_print_operand_punct", "(", "void", ")", "{", "const", "char", "*", "p", ";", "for", "(", "p", "=", "\"()[]<>*#/?~.@^+$:!\"", ";", "*", "p", ";", "p", "++", ")", "mips_print_operand_punct", "[", "(", "unsigned", "char", ")", "*", "p", "]", "=", "true", ";", "}", ""], "natrual_language": ["Initialize", "mips_print_operand_punct", "."], "TS_V_token": ["mips", "\"()[]<>*#/?~.@^+$:!\""], "File": "mips", "Func": "mips_init_print_operand_punct", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33040, "Length": 37} {"ground_truth": ["", "static", "void", "mips_insert_attributes", "(", "tree", "decl", ",", "tree", "*", "attributes", ")", "{", "const", "char", "*", "name", ";", "unsigned", "int", "compression_flags", ",", "nocompression_flags", ";", "compression_flags", "=", "mips_get_compress_on_flags", "(", "*", "attributes", ")", ";", "nocompression_flags", "=", "mips_get_compress_off_flags", "(", "*", "attributes", ")", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "!=", "FUNCTION_DECL", ")", "{", "if", "(", "nocompression_flags", ")", "error", "(", "\"%qs attribute only applies to functions\"", ",", "mips_get_compress_off_name", "(", "nocompression_flags", ")", ")", ";", "if", "(", "compression_flags", ")", "error", "(", "\"%qs attribute only applies to functions\"", ",", "mips_get_compress_on_name", "(", "nocompression_flags", ")", ")", ";", "}", "else", "{", "compression_flags", "|=", "mips_get_compress_on_flags", "(", "DECL_ATTRIBUTES", "(", "decl", ")", ")", ";", "nocompression_flags", "|=", "mips_get_compress_off_flags", "(", "DECL_ATTRIBUTES", "(", "decl", ")", ")", ";", "if", "(", "compression_flags", "&&", "nocompression_flags", ")", "error", "(", "\"%qE cannot have both %qs and %qs attributes\"", ",", "DECL_NAME", "(", "decl", ")", ",", "mips_get_compress_on_name", "(", "compression_flags", ")", ",", "mips_get_compress_off_name", "(", "nocompression_flags", ")", ")", ";", "if", "(", "compression_flags", "&", "MASK_MIPS16", "&&", "compression_flags", "&", "MASK_MICROMIPS", ")", "error", "(", "\"%qE cannot have both %qs and %qs attributes\"", ",", "DECL_NAME", "(", "decl", ")", ",", "\"mips16\"", ",", "\"micromips\"", ")", ";", "if", "(", "TARGET_FLIP_MIPS16", "&&", "!", "DECL_ARTIFICIAL", "(", "decl", ")", "&&", "compression_flags", "==", "0", "&&", "nocompression_flags", "==", "0", ")", "{", "name", "=", "mflip_mips16_use_mips16_p", "(", "decl", ")", "?", "\"mips16\"", ":", "\"nomips16\"", ";", "*", "attributes", "=", "tree_cons", "(", "get_identifier", "(", "name", ")", ",", "NULL", ",", "*", "attributes", ")", ";", "name", "=", "\"nomicromips\"", ";", "*", "attributes", "=", "tree_cons", "(", "get_identifier", "(", "name", ")", ",", "NULL", ",", "*", "attributes", ")", ";", "}", "}", "}", ""], "natrual_language": ["Implement", "TARGET_INSERT_ATTRIBUTES", "."], "TS_V_token": ["mips", "\"%qs attribute only applies to functions\"", "\"%qs attribute only applies to functions\"", "\"%qE cannot have both %qs and %qs attributes\"", "\"%qE cannot have both %qs and %qs attributes\"", "\"mips16\"", "\"micromips\"", "0", "0", "\"mips16\"", "\"nomips16\"", "\"nomicromips\""], "File": "mips", "Func": "mips_insert_attributes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33041, "Length": 219} {"ground_truth": ["", "static", "void", "mips_insert_insn_pseudos", "(", "void", ")", "{", "bool", "insn_pseudo_needed", "=", "TRUE", ";", "rtx_insn", "*", "insn", ";", "for", "(", "insn", "=", "get_last_insn", "(", ")", ";", "insn", "!=", "NULL_RTX", ";", "insn", "=", "PREV_INSN", "(", "insn", ")", ")", "switch", "(", "GET_CODE", "(", "insn", ")", ")", "{", "case", "INSN", ":", "if", "(", "GET_CODE", "(", "PATTERN", "(", "insn", ")", ")", "==", "UNSPEC_VOLATILE", "&&", "XINT", "(", "PATTERN", "(", "insn", ")", ",", "1", ")", "==", "UNSPEC_CONSTTABLE", ")", "{", "insn_pseudo_needed", "=", "TRUE", ";", "break", ";", "}", "case", "JUMP_INSN", ":", "case", "CALL_INSN", ":", "case", "JUMP_TABLE_DATA", ":", "insn_pseudo_needed", "=", "FALSE", ";", "break", ";", "case", "CODE_LABEL", ":", "if", "(", "insn_pseudo_needed", ")", "{", "emit_insn_after", "(", "gen_insn_pseudo", "(", ")", ",", "insn", ")", ";", "insn_pseudo_needed", "=", "FALSE", ";", "}", "break", ";", "default", ":", "break", ";", "}", "}", ""], "natrual_language": ["Insert", "a", "`", ".insn", "'", "assembly", "pseudo-op", "after", "any", "labels", "followed", "by", "a", "MIPS16", "constant", "pool", "or", "no", "insn", "at", "all", ".", "This", "is", "needed", "so", "that", "targets", "that", "have", "been", "optimized", "away", "are", "still", "marked", "as", "code", "and", "therefore", "branches", "that", "remained", "and", "point", "to", "them", "are", "known", "to", "retain", "the", "ISA", "mode", "and", "as", "such", "can", "be", "successfully", "assembled", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_insert_insn_pseudos", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33042, "Length": 123} {"ground_truth": ["", "static", "bool", "mips_insn_has_flexible_gp_ref_p", "(", "rtx_insn", "*", "insn", ")", "{", "return", "(", "get_attr_got", "(", "insn", ")", "!=", "GOT_UNSET", "||", "mips_small_data_pattern_p", "(", "PATTERN", "(", "insn", ")", ")", "||", "reg_overlap_mentioned_p", "(", "pic_offset_table_rtx", ",", "PATTERN", "(", "insn", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "INSN", "refers", "to", "the", "global", "pointer", "in", "a", "``", "flexible", "''", "way", ".", "See", "mips_cfun_has_flexible_gp_ref_p", "for", "details", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_insn_has_flexible_gp_ref_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33043, "Length": 38} {"ground_truth": ["", "static", "bool", "mips_insn_has_inflexible_gp_ref_p", "(", "rtx_insn", "*", "insn", ")", "{", "return", "find_reg_fusage", "(", "insn", ",", "USE", ",", "pic_offset_table_rtx", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "INSN", "refers", "to", "the", "global", "pointer", "in", "an", "``", "inflexible", "''", "way", ".", "See", "mips_cfun_has_inflexible_gp_ref_p", "for", "details", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_insn_has_inflexible_gp_ref_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33044, "Length": 20} {"ground_truth": ["", "static", "enum", "mips_split_type", "mips_insn_split_type", "(", "rtx", "insn", ")", "{", "basic_block", "bb", "=", "BLOCK_FOR_INSN", "(", "insn", ")", ";", "if", "(", "bb", ")", "{", "if", "(", "optimize_bb_for_speed_p", "(", "bb", ")", ")", "return", "SPLIT_FOR_SPEED", ";", "else", "return", "SPLIT_FOR_SIZE", ";", "}", "return", "SPLIT_IF_NECESSARY", ";", "}", ""], "natrual_language": ["Return", "the", "split", "type", "for", "instruction", "INSN", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_insn_split_type", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33045, "Length": 41} {"ground_truth": ["", "static", "bool", "mips_interrupt_extra_call_saved_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "(", "ISA_HAS_HILO", "||", "TARGET_DSP", ")", "&&", "MD_REG_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "TARGET_DSP", "&&", "DSP_ACC_REG_P", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "&&", "cfun", "->", "machine", "->", "use_shadow_register_set", "==", "SHADOW_SET_NO", ")", "{", "if", "(", "regno", "==", "GP_REG_FIRST", ")", "return", "false", ";", "if", "(", "KERNEL_REG_P", "(", "regno", ")", ")", "return", "false", ";", "if", "(", "regno", "==", "STACK_POINTER_REGNUM", ")", "return", "false", ";", "return", "call_used_regs", "[", "regno", "]", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "REGNO", "is", "a", "register", "that", "is", "ordinarily", "call-clobbered", "but", "must", "nevertheless", "be", "preserved", "by", "an", "interrupt", "handler", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_interrupt_extra_call_saved_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33046, "Length": 92} {"ground_truth": ["", "static", "enum", "mips_int_mask", "mips_interrupt_mask", "(", "tree", "type", ")", "{", "tree", "attr", "=", "lookup_attribute", "(", "\"interrupt\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", ";", "tree", "args", ",", "cst", ";", "const", "char", "*", "str", ";", "if", "(", "attr", "==", "NULL", ")", "return", "INT_MASK_EIC", ";", "args", "=", "TREE_VALUE", "(", "attr", ")", ";", "if", "(", "args", "==", "NULL", ")", "return", "INT_MASK_EIC", ";", "cst", "=", "TREE_VALUE", "(", "args", ")", ";", "if", "(", "strcmp", "(", "TREE_STRING_POINTER", "(", "cst", ")", ",", "\"eic\"", ")", "==", "0", ")", "return", "INT_MASK_EIC", ";", "str", "=", "TREE_STRING_POINTER", "(", "cst", ")", ";", "gcc_assert", "(", "strlen", "(", "str", ")", "==", "strlen", "(", "\"vector=sw0\"", ")", ")", ";", "if", "(", "str", "[", "7", "]", "==", "'s'", ")", "return", "(", "enum", "mips_int_mask", ")", "(", "INT_MASK_SW0", "+", "(", "str", "[", "9", "]", "-", "'0'", ")", ")", ";", "return", "(", "enum", "mips_int_mask", ")", "(", "INT_MASK_HW0", "+", "(", "str", "[", "9", "]", "-", "'0'", ")", ")", ";", "}", ""], "natrual_language": ["Return", "the", "mask", "for", "the", "``", "interrupt", "''", "attribute", "."], "TS_V_token": ["mips", "\"interrupt\"", "\"eic\"", "0", "\"vector=sw0\"", "7", "9", "9"], "File": "mips", "Func": "mips_interrupt_mask", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33047, "Length": 147} {"ground_truth": ["", "static", "bool", "mips_interrupt_type_p", "(", "tree", "type", ")", "{", "return", "lookup_attribute", "(", "\"interrupt\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", ";", "}", ""], "natrual_language": ["Check", "if", "the", "interrupt", "attribute", "is", "set", "for", "a", "function", "."], "TS_V_token": ["mips", "\"interrupt\""], "File": "mips", "Func": "mips_interrupt_type_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33048, "Length": 22} {"ground_truth": ["", "static", "bool", "mips_int_order_operand_ok_p", "(", "enum", "rtx_code", "code", ",", "rtx", "cmp1", ")", "{", "switch", "(", "code", ")", "{", "case", "GT", ":", "case", "GTU", ":", "return", "reg_or_0_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "case", "GE", ":", "case", "GEU", ":", "return", "!", "TARGET_MIPS16", "&&", "cmp1", "==", "const1_rtx", ";", "case", "LT", ":", "case", "LTU", ":", "return", "arith_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "case", "LE", ":", "return", "sle_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "case", "LEU", ":", "return", "sleu_operand", "(", "cmp1", ",", "VOIDmode", ")", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "CMP1", "is", "a", "suitable", "second", "operand", "for", "integer", "ordering", "test", "CODE", ".", "See", "also", "the", "*", "sCC", "patterns", "in", "mips.md", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_int_order_operand_ok_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33049, "Length": 89} {"ground_truth": ["", "static", "bool", "mips_in_small_data_p", "(", "const_tree", "decl", ")", "{", "unsigned", "HOST_WIDE_INT", "size", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "==", "STRING_CST", "||", "TREE_CODE", "(", "decl", ")", "==", "FUNCTION_DECL", ")", "return", "false", ";", "if", "(", "TARGET_ABICALLS", "||", "TARGET_VXWORKS_RTP", ")", "return", "false", ";", "if", "(", "TREE_CODE", "(", "decl", ")", "==", "VAR_DECL", "&&", "DECL_SECTION_NAME", "(", "decl", ")", "!=", "0", ")", "{", "const", "char", "*", "name", ";", "name", "=", "DECL_SECTION_NAME", "(", "decl", ")", ";", "if", "(", "strcmp", "(", "name", ",", "\".sdata\"", ")", "!=", "0", "&&", "strcmp", "(", "name", ",", "\".sbss\"", ")", "!=", "0", ")", "return", "false", ";", "if", "(", "mips_lo_relocs", "[", "SYMBOL_GP_RELATIVE", "]", "||", "!", "DECL_EXTERNAL", "(", "decl", ")", ")", "return", "true", ";", "}", "else", "if", "(", "TARGET_EMBEDDED_DATA", ")", "{", "if", "(", "TREE_CODE", "(", "decl", ")", "!=", "VAR_DECL", ")", "return", "false", ";", "if", "(", "TREE_READONLY", "(", "decl", ")", "&&", "!", "TREE_SIDE_EFFECTS", "(", "decl", ")", "&&", "(", "!", "DECL_INITIAL", "(", "decl", ")", "||", "TREE_CONSTANT", "(", "DECL_INITIAL", "(", "decl", ")", ")", ")", ")", "return", "false", ";", "}", "if", "(", "!", "TARGET_LOCAL_SDATA", "&&", "!", "TREE_PUBLIC", "(", "decl", ")", ")", "return", "false", ";", "if", "(", "!", "TARGET_EXTERN_SDATA", "&&", "DECL_P", "(", "decl", ")", ")", "{", "if", "(", "DECL_EXTERNAL", "(", "decl", ")", ")", "return", "false", ";", "if", "(", "DECL_COMMON", "(", "decl", ")", "&&", "DECL_INITIAL", "(", "decl", ")", "==", "NULL", ")", "return", "false", ";", "}", "size", "=", "int_size_in_bytes", "(", "TREE_TYPE", "(", "decl", ")", ")", ";", "return", "size", ">", "0", "&&", "size", "<=", "mips_small_data_threshold", ";", "}", ""], "natrual_language": ["Implement", "TARGET_IN_SMALL_DATA_P", ".", "Return", "true", "if", "it", "would", "be", "safe", "to", "access", "DECL", "using", "%", "gp_rel", "(", "...", ")", "(", "$", "gp", ")", "."], "TS_V_token": ["mips", "0", "\".sdata\"", "0", "\".sbss\"", "0", "0"], "File": "mips", "Func": "mips_in_small_data_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33050, "Length": 233} {"ground_truth": ["", "static", "reg_class_t", "mips_ira_change_pseudo_allocno_class", "(", "int", "regno", ",", "reg_class_t", "allocno_class", ",", "reg_class_t", "best_class", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "INTEGRAL_MODE_P", "(", "PSEUDO_REGNO_MODE", "(", "regno", ")", ")", "&&", "allocno_class", "==", "ALL_REGS", ")", "return", "GR_REGS", ";", "return", "allocno_class", ";", "}", ""], "natrual_language": ["Implement", "TARGET_IRA_CHANGE_PSEUDO_ALLOCNO_CLASS", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_ira_change_pseudo_allocno_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33051, "Length": 36} {"ground_truth": ["", "static", "int", "mips_issue_rate", "(", "void", ")", "{", "switch", "(", "mips_tune", ")", "{", "case", "PROCESSOR_74KC", ":", "case", "PROCESSOR_74KF2_1", ":", "case", "PROCESSOR_74KF1_1", ":", "case", "PROCESSOR_74KF3_2", ":", "case", "PROCESSOR_R10000", ":", "return", "4", ";", "case", "PROCESSOR_20KC", ":", "case", "PROCESSOR_R4130", ":", "case", "PROCESSOR_R5400", ":", "case", "PROCESSOR_R5500", ":", "case", "PROCESSOR_R5900", ":", "case", "PROCESSOR_R7000", ":", "case", "PROCESSOR_R9000", ":", "case", "PROCESSOR_OCTEON", ":", "case", "PROCESSOR_OCTEON2", ":", "case", "PROCESSOR_OCTEON3", ":", "case", "PROCESSOR_I6400", ":", "case", "PROCESSOR_GS264E", ":", "return", "2", ";", "case", "PROCESSOR_SB1", ":", "case", "PROCESSOR_SB1A", ":", "return", "3", ";", "case", "PROCESSOR_LOONGSON_2E", ":", "case", "PROCESSOR_LOONGSON_2F", ":", "case", "PROCESSOR_GS464", ":", "case", "PROCESSOR_GS464E", ":", "case", "PROCESSOR_P5600", ":", "case", "PROCESSOR_P6600", ":", "return", "4", ";", "case", "PROCESSOR_XLP", ":", "return", "(", "reload_completed", "?", "4", ":", "3", ")", ";", "default", ":", "return", "1", ";", "}", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "that", "can", "be", "issued", "per", "cycle", "."], "TS_V_token": ["mips", "4", "2", "3", "4", "4", "3", "1"], "File": "mips", "Func": "mips_issue_rate", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33052, "Length": 118} {"ground_truth": ["", "static", "bool", "mips_keep_interrupts_masked_p", "(", "tree", "type", ")", "{", "return", "lookup_attribute", "(", "\"keep_interrupts_masked\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", ";", "}", ""], "natrual_language": ["Check", "if", "the", "attribute", "to", "keep", "interrupts", "masked", "is", "set", "for", "a", "function", "."], "TS_V_token": ["mips", "\"keep_interrupts_masked\""], "File": "mips", "Func": "mips_keep_interrupts_masked_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33053, "Length": 22} {"ground_truth": ["", "int", "mips_ldst_scaled_shift", "(", "machine_mode", "mode", ")", "{", "int", "shift", "=", "exact_log2", "(", "GET_MODE_UNIT_SIZE", "(", "mode", ")", ")", ";", "if", "(", "shift", "<", "0", "||", "shift", ">", "8", ")", "gcc_unreachable", "(", ")", ";", "return", "shift", ";", "}", ""], "natrual_language": ["Return", "the", "scale", "shift", "that", "applied", "to", "MSA", "LD/ST", "address", "offset", "."], "TS_V_token": ["mips", "0", "8"], "File": "mips", "Func": "mips_ldst_scaled_shift", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33054, "Length": 36} {"ground_truth": ["", "static", "bool", "mips_legitimate_address_p", "(", "machine_mode", "mode", ",", "rtx", "x", ",", "bool", "strict_p", ")", "{", "struct", "mips_address_info", "addr", ";", "return", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "strict_p", ")", ";", "}", ""], "natrual_language": ["This", "function", "is", "used", "to", "implement", "GO_IF_LEGITIMATE_ADDRESS", ".", "It", "returns", "a", "nonzero", "value", "if", "X", "is", "a", "legitimate", "address", "for", "a", "memory", "operand", "of", "the", "indicated", "MODE", ".", "STRICT", "is", "nonzero", "if", "this", "function", "is", "called", "during", "reload", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_legitimate_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33055, "Length": 32} {"ground_truth": ["", "static", "bool", "mips_legitimate_constant_p", "(", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ",", "rtx", "x", ")", "{", "return", "mips_const_insns", "(", "x", ")", ">", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_LEGITIMATE_CONSTANT_P", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_legitimate_constant_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33056, "Length": 21} {"ground_truth": ["", "static", "rtx", "mips_legitimize_address", "(", "rtx", "x", ",", "rtx", "oldx", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ")", "{", "rtx", "base", ",", "addr", ";", "HOST_WIDE_INT", "offset", ";", "if", "(", "mips_tls_symbol_p", "(", "x", ")", ")", "return", "mips_legitimize_tls_address", "(", "x", ")", ";", "if", "(", "mips_split_symbol", "(", "NULL", ",", "x", ",", "mode", ",", "&", "addr", ")", ")", "return", "mips_force_address", "(", "addr", ",", "mode", ")", ";", "mips_split_plus", "(", "x", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "offset", "!=", "0", ")", "{", "if", "(", "!", "mips_valid_base_register_p", "(", "base", ",", "mode", ",", "false", ")", ")", "base", "=", "copy_to_mode_reg", "(", "Pmode", ",", "base", ")", ";", "addr", "=", "mips_add_offset", "(", "NULL", ",", "base", ",", "offset", ")", ";", "return", "mips_force_address", "(", "addr", ",", "mode", ")", ";", "}", "return", "x", ";", "}", ""], "natrual_language": ["This", "function", "is", "used", "to", "implement", "LEGITIMIZE_ADDRESS", ".", "If", "*", "XLOC", "can", "be", "legitimized", "in", "a", "way", "that", "the", "generic", "machinery", "might", "not", "expect", ",", "put", "the", "new", "address", "in", "*", "XLOC", "and", "return", "true", ".", "MODE", "is", "the", "mode", "of", "the", "memory", "being", "accessed", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_legitimize_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33057, "Length": 121} {"ground_truth": ["", "static", "void", "mips_legitimize_const_move", "(", "machine_mode", "mode", ",", "rtx", "dest", ",", "rtx", "src", ")", "{", "rtx", "base", ",", "offset", ";", "if", "(", "splittable_const_int_operand", "(", "src", ",", "mode", ")", ")", "{", "mips_move_integer", "(", "dest", ",", "dest", ",", "INTVAL", "(", "src", ")", ")", ";", "return", ";", "}", "if", "(", "mips_split_symbol", "(", "dest", ",", "src", ",", "MAX_MACHINE_MODE", ",", "&", "src", ")", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "src", ")", ")", ";", "return", ";", "}", "if", "(", "mips_tls_symbol_p", "(", "src", ")", ")", "{", "mips_emit_move", "(", "dest", ",", "mips_legitimize_tls_address", "(", "src", ")", ")", ";", "return", ";", "}", "split_const", "(", "src", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "offset", "!=", "const0_rtx", "&&", "(", "targetm", ".", "cannot_force_const_mem", "(", "mode", ",", "src", ")", "||", "(", "!", "TARGET_MIPS16", "&&", "can_create_pseudo_p", "(", ")", ")", ")", ")", "{", "base", "=", "mips_force_temporary", "(", "dest", ",", "base", ")", ";", "mips_emit_move", "(", "dest", ",", "mips_add_offset", "(", "NULL", ",", "base", ",", "INTVAL", "(", "offset", ")", ")", ")", ";", "return", ";", "}", "src", "=", "force_const_mem", "(", "mode", ",", "src", ")", ";", "mips_split_symbol", "(", "dest", ",", "XEXP", "(", "src", ",", "0", ")", ",", "mode", ",", "&", "XEXP", "(", "src", ",", "0", ")", ")", ";", "mips_emit_move", "(", "dest", ",", "src", ")", ";", "}", ""], "natrual_language": ["Subroutine", "of", "mips_legitimize_move", ".", "Move", "constant", "SRC", "into", "register", "DEST", "given", "that", "SRC", "satisfies", "immediate_operand", "but", "does", "n't", "satisfy", "move_operand", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_legitimize_const_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33058, "Length": 199} {"ground_truth": ["", "bool", "mips_legitimize_move", "(", "machine_mode", "mode", ",", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "!", "register_operand", "(", "dest", ",", "mode", ")", "&&", "!", "register_operand", "(", "src", ",", "mode", ")", "&&", "(", "TARGET_MIPS16", "||", "!", "const_0_operand", "(", "src", ",", "mode", ")", "||", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", ")", "{", "mips_emit_move", "(", "dest", ",", "force_reg", "(", "mode", ",", "src", ")", ")", ";", "return", "true", ";", "}", "if", "(", "CONSTANT_P", "(", "src", ")", "&&", "!", "move_operand", "(", "src", ",", "mode", ")", ")", "{", "mips_legitimize_const_move", "(", "mode", ",", "dest", ",", "src", ")", ";", "set_unique_reg_note", "(", "get_last_insn", "(", ")", ",", "REG_EQUAL", ",", "copy_rtx", "(", "src", ")", ")", ";", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["If", "(", "set", "DEST", "SRC", ")", "is", "not", "a", "valid", "instruction", ",", "emit", "an", "equivalent", "sequence", "that", "is", "valid", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_legitimize_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33059, "Length": 112} {"ground_truth": ["", "static", "rtx", "mips_legitimize_tls_address", "(", "rtx", "loc", ")", "{", "rtx", "dest", ",", "v0", ",", "tp", ",", "tmp1", ",", "tmp2", ",", "eqv", ",", "offset", ";", "enum", "tls_model", "model", ";", "model", "=", "SYMBOL_REF_TLS_MODEL", "(", "loc", ")", ";", "if", "(", "!", "TARGET_ABICALLS", ")", "model", "=", "TLS_MODEL_LOCAL_EXEC", ";", "switch", "(", "model", ")", "{", "case", "TLS_MODEL_GLOBAL_DYNAMIC", ":", "{", "v0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_RETURN", ")", ";", "rtx_insn", "*", "insn", "=", "mips_call_tls_get_addr", "(", "loc", ",", "SYMBOL_TLSGD", ",", "v0", ")", ";", "dest", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_libcall_block", "(", "insn", ",", "dest", ",", "v0", ",", "loc", ")", ";", "break", ";", "}", "case", "TLS_MODEL_LOCAL_DYNAMIC", ":", "{", "v0", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_RETURN", ")", ";", "rtx_insn", "*", "insn", "=", "mips_call_tls_get_addr", "(", "loc", ",", "SYMBOL_TLSLDM", ",", "v0", ")", ";", "tmp1", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "eqv", "=", "gen_rtx_UNSPEC", "(", "Pmode", ",", "gen_rtvec", "(", "1", ",", "const0_rtx", ")", ",", "UNSPEC_TLS_LDM", ")", ";", "emit_libcall_block", "(", "insn", ",", "tmp1", ",", "v0", ",", "eqv", ")", ";", "offset", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_DTPREL", ")", ";", "if", "(", "mips_split_p", "[", "SYMBOL_DTPREL", "]", ")", "{", "tmp2", "=", "mips_unspec_offset_high", "(", "NULL", ",", "tmp1", ",", "loc", ",", "SYMBOL_DTPREL", ")", ";", "dest", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "tmp2", ",", "offset", ")", ";", "}", "else", "dest", "=", "expand_binop", "(", "Pmode", ",", "add_optab", ",", "tmp1", ",", "offset", ",", "0", ",", "0", ",", "OPTAB_DIRECT", ")", ";", "break", ";", "}", "case", "TLS_MODEL_INITIAL_EXEC", ":", "tp", "=", "mips_get_tp", "(", ")", ";", "tmp1", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "tmp2", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_GOTTPREL", ")", ";", "if", "(", "Pmode", "==", "DImode", ")", "emit_insn", "(", "gen_load_gotdi", "(", "tmp1", ",", "pic_offset_table_rtx", ",", "tmp2", ")", ")", ";", "else", "emit_insn", "(", "gen_load_gotsi", "(", "tmp1", ",", "pic_offset_table_rtx", ",", "tmp2", ")", ")", ";", "dest", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "dest", ",", "tmp1", ",", "tp", ")", ")", ";", "break", ";", "case", "TLS_MODEL_LOCAL_EXEC", ":", "tmp1", "=", "mips_get_tp", "(", ")", ";", "offset", "=", "mips_unspec_address", "(", "loc", ",", "SYMBOL_TPREL", ")", ";", "if", "(", "mips_split_p", "[", "SYMBOL_TPREL", "]", ")", "{", "tmp2", "=", "mips_unspec_offset_high", "(", "NULL", ",", "tmp1", ",", "loc", ",", "SYMBOL_TPREL", ")", ";", "dest", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "tmp2", ",", "offset", ")", ";", "}", "else", "dest", "=", "expand_binop", "(", "Pmode", ",", "add_optab", ",", "tmp1", ",", "offset", ",", "0", ",", "0", ",", "OPTAB_DIRECT", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "dest", ";", "}", ""], "natrual_language": ["Generate", "the", "code", "to", "access", "LOC", ",", "a", "thread", "local", "SYMBOL_REF", ".", "The", "return", "value", "will", "be", "a", "valid", "address", "and", "move_operand", "(", "either", "a", "REG", "or", "a", "LO_SUM", ")", "."], "TS_V_token": ["mips", "1", "0", "0", "0", "0"], "File": "mips", "Func": "mips_legitimize_tls_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33060, "Length": 381} {"ground_truth": ["", "static", "rtx", "mips_libcall_value", "(", "machine_mode", "mode", ",", "const_rtx", "fun", "ATTRIBUTE_UNUSED", ")", "{", "return", "mips_function_value_1", "(", "NULL_TREE", ",", "NULL_TREE", ",", "mode", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_LIBCALL_VALUE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_libcall_value", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33061, "Length": 23} {"ground_truth": ["", "bool", "mips_linked_madd_p", "(", "rtx_insn", "*", "out_insn", ",", "rtx_insn", "*", "in_insn", ")", "{", "enum", "attr_accum_in", "accum_in", ";", "int", "accum_in_opnum", ";", "rtx", "accum_in_op", ";", "if", "(", "recog_memoized", "(", "in_insn", ")", "<", "0", ")", "return", "false", ";", "accum_in", "=", "get_attr_accum_in", "(", "in_insn", ")", ";", "if", "(", "accum_in", "==", "ACCUM_IN_NONE", ")", "return", "false", ";", "accum_in_opnum", "=", "accum_in", "-", "ACCUM_IN_0", ";", "extract_insn", "(", "in_insn", ")", ";", "gcc_assert", "(", "accum_in_opnum", "<", "recog_data", ".", "n_operands", ")", ";", "accum_in_op", "=", "recog_data", ".", "operand", "[", "accum_in_opnum", "]", ";", "return", "reg_set_p", "(", "accum_in_op", ",", "out_insn", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "INSN", "is", "a", "multiply-add", "or", "multiply-subtract", "instruction", "and", "PREV", "assigns", "to", "the", "accumulator", "operand", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_linked_madd_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33062, "Length": 88} {"ground_truth": ["", "static", "bool", "mips_load_call_address", "(", "enum", "mips_call_type", "type", ",", "rtx", "dest", ",", "rtx", "addr", ")", "{", "if", "(", "TARGET_EXPLICIT_RELOCS", "&&", "!", "(", "type", "==", "MIPS_CALL_SIBCALL", "&&", "TARGET_CALL_SAVED_GP", ")", "&&", "mips_ok_for_lazy_binding_p", "(", "addr", ")", ")", "{", "addr", "=", "mips_got_load", "(", "dest", ",", "addr", ",", "SYMBOL_GOTOFF_CALL", ")", ";", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "addr", ")", ")", ";", "return", "true", ";", "}", "else", "{", "mips_emit_move", "(", "dest", ",", "addr", ")", ";", "return", "false", ";", "}", "}", ""], "natrual_language": ["Load", "function", "address", "ADDR", "into", "register", "DEST", ".", "SIBCALL_P", "is", "true", "if", "the", "address", "is", "needed", "for", "a", "sibling", "call", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_load_call_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33063, "Length": 73} {"ground_truth": ["", "static", "unsigned", "int", "mips_load_label_num_insns", "(", "void", ")", "{", "if", "(", "cfun", "->", "machine", "->", "load_label_num_insns", "==", "0", ")", "{", "mips_process_load_label", "(", "pc_rtx", ")", ";", "cfun", "->", "machine", "->", "load_label_num_insns", "=", "mips_multi_num_insns", ";", "}", "return", "cfun", "->", "machine", "->", "load_label_num_insns", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "to", "load", "a", "label", "into", "$", "AT", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_load_label_num_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33064, "Length": 41} {"ground_truth": ["", "int", "mips_load_store_insns", "(", "rtx", "mem", ",", "rtx_insn", "*", "insn", ")", "{", "machine_mode", "mode", ";", "bool", "might_split_p", ";", "rtx", "set", ";", "gcc_assert", "(", "MEM_P", "(", "mem", ")", ")", ";", "mode", "=", "GET_MODE", "(", "mem", ")", ";", "might_split_p", "=", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_WORD", ";", "if", "(", "might_split_p", ")", "{", "set", "=", "single_set", "(", "insn", ")", ";", "if", "(", "set", "&&", "!", "mips_split_move_insn_p", "(", "SET_DEST", "(", "set", ")", ",", "SET_SRC", "(", "set", ")", ",", "insn", ")", ")", "might_split_p", "=", "false", ";", "}", "return", "mips_address_insns", "(", "XEXP", "(", "mem", ",", "0", ")", ",", "mode", ",", "might_split_p", ")", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "to", "implement", "INSN", ",", "given", "that", "it", "loads", "from", "or", "stores", "to", "MEM", ".", "Assume", "that", "BASE_INSN_LENGTH", "is", "the", "length", "of", "one", "instruction", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_load_store_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33065, "Length": 97} {"ground_truth": ["", "rtx", "mips_loongson_ext2_prefetch_cookie", "(", "rtx", "write", ",", "rtx", ")", "{", "if", "(", "INTVAL", "(", "write", ")", "==", "1", ")", "return", "GEN_INT", "(", "INTVAL", "(", "write", ")", ")", ";", "if", "(", "INTVAL", "(", "write", ")", "==", "0", ")", "return", "GEN_INT", "(", "INTVAL", "(", "write", ")", ")", ";", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Loongson", "EXT2", "only", "implements", "pref", "hint=0", "(", "prefetch", "for", "load", ")", "and", "hint=1", "(", "prefetch", "for", "store", ")", ",", "other", "hint", "just", "scale", "to", "hint", "=", "0", "and", "hint", "=", "1", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips", "Func": "mips_loongson_ext2_prefetch_cookie", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33066, "Length": 50} {"ground_truth": ["", "static", "bool", "mips_lo_sum_offset_lookup", "(", "mips_offset_table", "*", "htab", ",", "rtx", "x", ",", "enum", "insert_option", "option", ")", "{", "rtx", "base", ",", "offset", ";", "mips_lo_sum_offset", "*", "*", "slot", ";", "struct", "mips_lo_sum_offset", "*", "entry", ";", "split_const", "(", "x", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "UNSPEC_ADDRESS_P", "(", "base", ")", ")", "base", "=", "UNSPEC_ADDRESS", "(", "base", ")", ";", "slot", "=", "htab", "->", "find_slot_with_hash", "(", "base", ",", "mips_hash_base", "(", "base", ")", ",", "option", ")", ";", "if", "(", "slot", "==", "NULL", ")", "return", "false", ";", "entry", "=", "(", "struct", "mips_lo_sum_offset", "*", ")", "*", "slot", ";", "if", "(", "option", "==", "INSERT", ")", "{", "if", "(", "entry", "==", "NULL", ")", "{", "entry", "=", "XNEW", "(", "struct", "mips_lo_sum_offset", ")", ";", "entry", "->", "base", "=", "base", ";", "entry", "->", "offset", "=", "INTVAL", "(", "offset", ")", ";", "*", "slot", "=", "entry", ";", "}", "else", "{", "if", "(", "INTVAL", "(", "offset", ")", ">", "entry", "->", "offset", ")", "entry", "->", "offset", "=", "INTVAL", "(", "offset", ")", ";", "}", "}", "return", "INTVAL", "(", "offset", ")", "<=", "entry", "->", "offset", ";", "}", ""], "natrual_language": ["Look", "up", "symbolic", "constant", "X", "in", "HTAB", ",", "which", "is", "a", "hash", "table", "of", "mips_lo_sum_offsets", ".", "If", "OPTION", "is", "NO_INSERT", ",", "return", "true", "if", "X", "can", "be", "paired", "with", "a", "recorded", "LO_SUM", ",", "otherwise", "record", "X", "in", "the", "table", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_lo_sum_offset_lookup", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33067, "Length": 169} {"ground_truth": ["", "static", "bool", "mips_lra_p", "(", "void", ")", "{", "return", "mips_lra_flag", ";", "}", ""], "natrual_language": ["Implement", "TARGET_LRA_P", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_lra_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33068, "Length": 11} {"ground_truth": ["", "static", "void", "mips_ls2_dfa_post_advance_cycle", "(", "state_t", "state", ")", "{", "if", "(", "cpu_unit_reservation_p", "(", "state", ",", "mips_ls2", ".", "alu1_core_unit_code", ")", ")", "{", "gcc_assert", "(", "mips_ls2", ".", "cycle_has_multi_p", ")", ";", "mips_ls2", ".", "alu1_turn_p", "=", "false", ";", "}", "mips_ls2", ".", "cycle_has_multi_p", "=", "false", ";", "if", "(", "cpu_unit_reservation_p", "(", "state", ",", "mips_ls2", ".", "alu2_core_unit_code", ")", ")", "mips_ls2", ".", "alu1_turn_p", "=", "true", ";", "if", "(", "mips_ls2", ".", "alu1_turn_p", ")", "{", "if", "(", "state_transition", "(", "state", ",", "mips_ls2", ".", "alu1_turn_enabled_insn", ")", ">=", "0", ")", "gcc_unreachable", "(", ")", ";", "}", "else", "{", "if", "(", "state_transition", "(", "state", ",", "mips_ls2", ".", "alu2_turn_enabled_insn", ")", ">=", "0", ")", "gcc_unreachable", "(", ")", ";", "}", "if", "(", "cpu_unit_reservation_p", "(", "state", ",", "mips_ls2", ".", "falu1_core_unit_code", ")", ")", "{", "gcc_unreachable", "(", ")", ";", "mips_ls2", ".", "falu1_turn_p", "=", "false", ";", "}", "if", "(", "cpu_unit_reservation_p", "(", "state", ",", "mips_ls2", ".", "falu2_core_unit_code", ")", ")", "mips_ls2", ".", "falu1_turn_p", "=", "true", ";", "if", "(", "mips_ls2", ".", "falu1_turn_p", ")", "{", "if", "(", "state_transition", "(", "state", ",", "mips_ls2", ".", "falu1_turn_enabled_insn", ")", ">=", "0", ")", "gcc_unreachable", "(", ")", ";", "}", "else", "{", "if", "(", "state_transition", "(", "state", ",", "mips_ls2", ".", "falu2_turn_enabled_insn", ")", ">=", "0", ")", "gcc_unreachable", "(", ")", ";", "}", "}", ""], "natrual_language": ["Initialize", "STATE", "when", "scheduling", "for", "Loongson", "2E/2F", ".", "Support", "round-robin", "dispatch", "scheme", "by", "enabling", "only", "one", "of", "ALU1/ALU2", "and", "one", "of", "FALU1/FALU2", "units", "for", "ALU1/2", "and", "FALU1/2", "instructions", "respectively", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips", "Func": "mips_ls2_dfa_post_advance_cycle", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33069, "Length": 188} {"ground_truth": ["", "static", "void", "mips_ls2_init_dfa_post_cycle_insn", "(", "void", ")", "{", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_ls2_alu1_turn_enabled_insn", "(", ")", ")", ";", "mips_ls2", ".", "alu1_turn_enabled_insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_ls2_alu2_turn_enabled_insn", "(", ")", ")", ";", "mips_ls2", ".", "alu2_turn_enabled_insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_ls2_falu1_turn_enabled_insn", "(", ")", ")", ";", "mips_ls2", ".", "falu1_turn_enabled_insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "start_sequence", "(", ")", ";", "emit_insn", "(", "gen_ls2_falu2_turn_enabled_insn", "(", ")", ")", ";", "mips_ls2", ".", "falu2_turn_enabled_insn", "=", "get_insns", "(", ")", ";", "end_sequence", "(", ")", ";", "mips_ls2", ".", "alu1_core_unit_code", "=", "get_cpu_unit_code", "(", "\"ls2_alu1_core\"", ")", ";", "mips_ls2", ".", "alu2_core_unit_code", "=", "get_cpu_unit_code", "(", "\"ls2_alu2_core\"", ")", ";", "mips_ls2", ".", "falu1_core_unit_code", "=", "get_cpu_unit_code", "(", "\"ls2_falu1_core\"", ")", ";", "mips_ls2", ".", "falu2_core_unit_code", "=", "get_cpu_unit_code", "(", "\"ls2_falu2_core\"", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCHED_INIT_DFA_POST_CYCLE_INSN", "hook", "for", "Loongson2", "."], "TS_V_token": ["mips", "\"ls2_alu1_core\"", "\"ls2_alu2_core\"", "\"ls2_falu1_core\"", "\"ls2_falu2_core\""], "File": "mips", "Func": "mips_ls2_init_dfa_post_cycle_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33070, "Length": 136} {"ground_truth": ["", "static", "void", "mips_ls2_variable_issue", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "mips_ls2", ".", "alu1_turn_p", ")", "{", "if", "(", "cpu_unit_reservation_p", "(", "curr_state", ",", "mips_ls2", ".", "alu1_core_unit_code", ")", ")", "mips_ls2", ".", "alu1_turn_p", "=", "false", ";", "}", "else", "{", "if", "(", "cpu_unit_reservation_p", "(", "curr_state", ",", "mips_ls2", ".", "alu2_core_unit_code", ")", ")", "mips_ls2", ".", "alu1_turn_p", "=", "true", ";", "}", "if", "(", "mips_ls2", ".", "falu1_turn_p", ")", "{", "if", "(", "cpu_unit_reservation_p", "(", "curr_state", ",", "mips_ls2", ".", "falu1_core_unit_code", ")", ")", "mips_ls2", ".", "falu1_turn_p", "=", "false", ";", "}", "else", "{", "if", "(", "cpu_unit_reservation_p", "(", "curr_state", ",", "mips_ls2", ".", "falu2_core_unit_code", ")", ")", "mips_ls2", ".", "falu1_turn_p", "=", "true", ";", "}", "if", "(", "recog_memoized", "(", "insn", ")", ">=", "0", ")", "mips_ls2", ".", "cycle_has_multi_p", "|=", "(", "get_attr_type", "(", "insn", ")", "==", "TYPE_MULTI", ")", ";", "}", ""], "natrual_language": ["Update", "round-robin", "counters", "for", "ALU1/2", "and", "FALU1/2", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_ls2_variable_issue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33071, "Length": 122} {"ground_truth": ["", "static", "bool", "mips_lwxs_address_p", "(", "rtx", "addr", ")", "{", "if", "(", "ISA_HAS_LWXS", "&&", "GET_CODE", "(", "addr", ")", "==", "PLUS", "&&", "REG_P", "(", "XEXP", "(", "addr", ",", "1", ")", ")", ")", "{", "rtx", "offset", "=", "XEXP", "(", "addr", ",", "0", ")", ";", "if", "(", "GET_CODE", "(", "offset", ")", "==", "MULT", "&&", "REG_P", "(", "XEXP", "(", "offset", ",", "0", ")", ")", "&&", "CONST_INT_P", "(", "XEXP", "(", "offset", ",", "1", ")", ")", "&&", "INTVAL", "(", "XEXP", "(", "offset", ",", "1", ")", ")", "==", "4", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "ADDR", "matches", "the", "pattern", "for", "the", "LWXS", "load", "scaled", "indexed", "address", "instruction", ".", "Note", "that", "such", "addresses", "are", "not", "considered", "legitimate", "in", "the", "TARGET_LEGITIMATE_ADDRESS_P", "sense", ",", "because", "their", "use", "is", "so", "restricted", "."], "TS_V_token": ["mips", "1", "0", "0", "1", "1", "4"], "File": "mips", "Func": "mips_lwxs_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33072, "Length": 89} {"ground_truth": ["", "static", "bool", "mips_lx_address_p", "(", "rtx", "addr", ",", "machine_mode", "mode", ")", "{", "if", "(", "GET_CODE", "(", "addr", ")", "!=", "PLUS", "||", "!", "REG_P", "(", "XEXP", "(", "addr", ",", "0", ")", ")", "||", "!", "REG_P", "(", "XEXP", "(", "addr", ",", "1", ")", ")", ")", "return", "false", ";", "if", "(", "ISA_HAS_LBX", "&&", "mode", "==", "QImode", ")", "return", "true", ";", "if", "(", "ISA_HAS_LHX", "&&", "mode", "==", "HImode", ")", "return", "true", ";", "if", "(", "ISA_HAS_LWX", "&&", "mode", "==", "SImode", ")", "return", "true", ";", "if", "(", "ISA_HAS_LDX", "&&", "mode", "==", "DImode", ")", "return", "true", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "ADDR", "matches", "the", "pattern", "for", "the", "L", "{", "B", ",", "H", ",", "W", ",", "D", "}", "{", ",", "U", "}", "X", "load", "indexed", "address", "instruction", ".", "Note", "that", "such", "addresses", "are", "not", "considered", "legitimate", "in", "the", "TARGET_LEGITIMATE_ADDRESS_P", "sense", ",", "because", "their", "use", "is", "so", "restricted", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_lx_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33073, "Length": 103} {"ground_truth": ["", "static", "void", "mips_macc_chains_record", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "get_attr_may_clobber_hilo", "(", "insn", ")", ")", "mips_macc_chains_last_hilo", "=", "insn", ";", "}", ""], "natrual_language": ["A", "TUNE_MACC_CHAINS", "helper", "function", ".", "Record", "that", "instruction", "INSN", "has", "been", "scheduled", ",", "updating", "mips_macc_chains_last_hilo", "appropriately", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_macc_chains_record", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33074, "Length": 21} {"ground_truth": ["", "static", "void", "mips_macc_chains_reorder", "(", "rtx_insn", "*", "*", "ready", ",", "int", "nready", ")", "{", "int", "i", ",", "j", ";", "if", "(", "mips_macc_chains_last_hilo", "!=", "0", ")", "for", "(", "i", "=", "nready", "-", "1", ";", "i", ">=", "0", ";", "i", "--", ")", "if", "(", "mips_linked_madd_p", "(", "mips_macc_chains_last_hilo", ",", "ready", "[", "i", "]", ")", ")", "{", "for", "(", "j", "=", "nready", "-", "1", ";", "j", ">", "i", ";", "j", "--", ")", "if", "(", "recog_memoized", "(", "ready", "[", "j", "]", ")", ">=", "0", "&&", "get_attr_may_clobber_hilo", "(", "ready", "[", "j", "]", ")", ")", "{", "mips_promote_ready", "(", "ready", ",", "i", ",", "j", ")", ";", "break", ";", "}", "break", ";", "}", "}", ""], "natrual_language": ["A", "TUNE_MACC_CHAINS", "helper", "function", ".", "Search", "ready", "queue", "READY", ",", "which", "has", "NREADY", "elements", ",", "looking", "for", "a", "multiply-add", "or", "multiply-subtract", "instruction", "that", "is", "cumulative", "with", "mips_macc_chains_last_hilo", ".", "If", "there", "is", "one", ",", "promote", "it", "ahead", "of", "anything", "else", "that", "might", "clobber", "hi", "or", "lo", "."], "TS_V_token": ["mips", "0", "1", "0", "1", "0"], "File": "mips", "Func": "mips_macc_chains_reorder", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33075, "Length": 104} {"ground_truth": ["", "static", "unsigned", "int", "mips_machine_reorg2", "(", "void", ")", "{", "mips_reorg_process_insns", "(", ")", ";", "if", "(", "!", "TARGET_MIPS16", "&&", "TARGET_EXPLICIT_RELOCS", "&&", "TUNE_MIPS4130", "&&", "TARGET_VR4130_ALIGN", ")", "vr4130_align_insns", "(", ")", ";", "if", "(", "mips_expand_ghost_gp_insns", "(", ")", ")", "mips_reorg_process_insns", "(", ")", ";", "mips16_split_long_branches", "(", ")", ";", "mips_insert_insn_pseudos", "(", ")", ";", "return", "0", ";", "}", ""], "natrual_language": ["We", "use", "a", "machine", "specific", "pass", "to", "do", "a", "second", "machine", "dependent", "reorg", "pass", "after", "delay", "branch", "scheduling", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_machine_reorg2", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33076, "Length": 49} {"ground_truth": ["", "static", "void", "mips_maybe_swap_ready", "(", "rtx_insn", "*", "*", "ready", ",", "int", "pos1", ",", "int", "pos2", ",", "int", "limit", ")", "{", "if", "(", "pos1", "<", "pos2", "&&", "INSN_PRIORITY", "(", "ready", "[", "pos1", "]", ")", "+", "limit", ">=", "INSN_PRIORITY", "(", "ready", "[", "pos2", "]", ")", ")", "{", "rtx_insn", "*", "temp", ";", "temp", "=", "ready", "[", "pos1", "]", ";", "ready", "[", "pos1", "]", "=", "ready", "[", "pos2", "]", ";", "ready", "[", "pos2", "]", "=", "temp", ";", "}", "}", ""], "natrual_language": ["If", "the", "priority", "of", "the", "instruction", "at", "POS2", "in", "the", "ready", "queue", "READY", "is", "within", "LIMIT", "units", "of", "that", "of", "the", "instruction", "at", "POS1", ",", "swap", "the", "instructions", "if", "POS2", "is", "not", "already", "less", "than", "POS1", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_maybe_swap_ready", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33077, "Length": 74} {"ground_truth": ["", "static", "const", "char", "*", "mips_mdebug_abi_name", "(", "void", ")", "{", "switch", "(", "mips_abi", ")", "{", "case", "ABI_32", ":", "return", "\"abi32\"", ";", "case", "ABI_O64", ":", "return", "\"abiO64\"", ";", "case", "ABI_N32", ":", "return", "\"abiN32\"", ";", "case", "ABI_64", ":", "return", "\"abi64\"", ";", "case", "ABI_EABI", ":", "return", "TARGET_64BIT", "?", "\"eabi64\"", ":", "\"eabi32\"", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "}", ""], "natrual_language": ["Return", "the", "FOO", "in", "the", "name", "of", "the", "``", ".mdebug.FOO", "''", "section", "associated", "with", "the", "current", "ABI", "."], "TS_V_token": ["mips", "\"abi32\"", "\"abiO64\"", "\"abiN32\"", "\"abi64\"", "\"eabi64\"", "\"eabi32\""], "File": "mips", "Func": "mips_mdebug_abi_name", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33078, "Length": 56} {"ground_truth": ["", "static", "int", "mips_memory_move_cost", "(", "machine_mode", "mode", ",", "reg_class_t", "rclass", ",", "bool", "in", ")", "{", "return", "(", "mips_cost", "->", "memory_latency", "+", "memory_move_secondary_cost", "(", "mode", ",", "rclass", ",", "in", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_MEMORY_MOVE_COST", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_memory_move_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33079, "Length": 31} {"ground_truth": ["", "bool", "mips_mem_fits_mode_p", "(", "machine_mode", "mode", ",", "rtx", "x", ")", "{", "return", "(", "MEM_P", "(", "x", ")", "&&", "MEM_SIZE_KNOWN_P", "(", "x", ")", "&&", "MEM_SIZE", "(", "x", ")", "==", "GET_MODE_SIZE", "(", "mode", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "MEM", "with", "the", "same", "size", "as", "MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_mem_fits_mode_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33080, "Length": 34} {"ground_truth": ["", "static", "tree", "mips_merge_decl_attributes", "(", "tree", "olddecl", ",", "tree", "newdecl", ")", "{", "unsigned", "int", "diff", ";", "diff", "=", "(", "mips_get_compress_on_flags", "(", "DECL_ATTRIBUTES", "(", "olddecl", ")", ")", "^", "mips_get_compress_on_flags", "(", "DECL_ATTRIBUTES", "(", "newdecl", ")", ")", ")", ";", "if", "(", "diff", ")", "error", "(", "\"%qE redeclared with conflicting %qs attributes\"", ",", "DECL_NAME", "(", "newdecl", ")", ",", "mips_get_compress_on_name", "(", "diff", ")", ")", ";", "diff", "=", "(", "mips_get_compress_off_flags", "(", "DECL_ATTRIBUTES", "(", "olddecl", ")", ")", "^", "mips_get_compress_off_flags", "(", "DECL_ATTRIBUTES", "(", "newdecl", ")", ")", ")", ";", "if", "(", "diff", ")", "error", "(", "\"%qE redeclared with conflicting %qs attributes\"", ",", "DECL_NAME", "(", "newdecl", ")", ",", "mips_get_compress_off_name", "(", "diff", ")", ")", ";", "return", "merge_attributes", "(", "DECL_ATTRIBUTES", "(", "olddecl", ")", ",", "DECL_ATTRIBUTES", "(", "newdecl", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_MERGE_DECL_ATTRIBUTES", "."], "TS_V_token": ["mips", "\"%qE redeclared with conflicting %qs attributes\"", "\"%qE redeclared with conflicting %qs attributes\""], "File": "mips", "Func": "mips_merge_decl_attributes", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33081, "Length": 108} {"ground_truth": ["", "static", "bool", "mips_modes_tieable_p", "(", "machine_mode", "mode1", ",", "machine_mode", "mode2", ")", "{", "return", "(", "mode1", "==", "mode2", "||", "(", "!", "mips_mode_ok_for_mov_fmt_p", "(", "mode1", ")", "&&", "!", "mips_mode_ok_for_mov_fmt_p", "(", "mode2", ")", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "MODES_TIEABLE_P", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_modes_tieable_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33082, "Length": 33} {"ground_truth": ["", "static", "bool", "mips_mode_ok_for_mov_fmt_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "E_CCFmode", ":", "case", "E_SFmode", ":", "return", "TARGET_HARD_FLOAT", ";", "case", "E_DFmode", ":", "return", "TARGET_HARD_FLOAT", "&&", "TARGET_DOUBLE_FLOAT", ";", "case", "E_V2SFmode", ":", "return", "TARGET_HARD_FLOAT", "&&", "TARGET_PAIRED_SINGLE_FLOAT", ";", "default", ":", "return", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ";", "}", "}", ""], "natrual_language": ["Return", "true", "if", "moves", "in", "mode", "MODE", "can", "use", "the", "FPU", "'s", "mov.fmt", "instruction", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_mode_ok_for_mov_fmt_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33083, "Length": 48} {"ground_truth": ["", "static", "int", "mips_mode_rep_extended", "(", "scalar_int_mode", "mode", ",", "scalar_int_mode", "mode_rep", ")", "{", "if", "(", "TARGET_64BIT", "&&", "mode", "==", "SImode", "&&", "mode_rep", "==", "DImode", ")", "return", "SIGN_EXTEND", ";", "return", "UNKNOWN", ";", "}", ""], "natrual_language": ["Implement", "TARGET_MODE_REP_EXTENDED", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_mode_rep_extended", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33084, "Length": 30} {"ground_truth": ["", "static", "int", "mips_move_from_gpr_cost", "(", "reg_class_t", "to", ")", "{", "switch", "(", "to", ")", "{", "case", "M16_REGS", ":", "case", "GENERAL_REGS", ":", "return", "2", ";", "case", "ACC_REGS", ":", "return", "6", ";", "case", "FP_REGS", ":", "return", "4", ";", "case", "COP0_REGS", ":", "case", "COP2_REGS", ":", "case", "COP3_REGS", ":", "return", "5", ";", "default", ":", "return", "0", ";", "}", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "moving", "a", "value", "from", "a", "GPR", "to", "a", "register", "of", "class", "TO", ".", "Return", "0", "for", "classes", "that", "are", "unions", "of", "other", "classes", "handled", "by", "this", "function", "."], "TS_V_token": ["mips", "2", "6", "4", "5", "0"], "File": "mips", "Func": "mips_move_from_gpr_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33085, "Length": 53} {"ground_truth": ["", "void", "mips_move_integer", "(", "rtx", "temp", ",", "rtx", "dest", ",", "unsigned", "HOST_WIDE_INT", "value", ")", "{", "struct", "mips_integer_op", "codes", "[", "MIPS_MAX_INTEGER_OPS", "]", ";", "machine_mode", "mode", ";", "unsigned", "int", "i", ",", "num_ops", ";", "rtx", "x", ";", "mode", "=", "GET_MODE", "(", "dest", ")", ";", "num_ops", "=", "mips_build_integer", "(", "codes", ",", "value", ")", ";", "x", "=", "GEN_INT", "(", "codes", "[", "0", "]", ".", "value", ")", ";", "for", "(", "i", "=", "1", ";", "i", "<", "num_ops", ";", "i", "++", ")", "{", "if", "(", "!", "can_create_pseudo_p", "(", ")", ")", "{", "emit_insn", "(", "gen_rtx_SET", "(", "temp", ",", "x", ")", ")", ";", "x", "=", "temp", ";", "}", "else", "x", "=", "force_reg", "(", "mode", ",", "x", ")", ";", "x", "=", "gen_rtx_fmt_ee", "(", "codes", "[", "i", "]", ".", "code", ",", "mode", ",", "x", ",", "GEN_INT", "(", "codes", "[", "i", "]", ".", "value", ")", ")", ";", "}", "emit_insn", "(", "gen_rtx_SET", "(", "dest", ",", "x", ")", ")", ";", "}", ""], "natrual_language": ["Move", "VALUE", "into", "register", "DEST", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_move_integer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33086, "Length": 146} {"ground_truth": ["", "static", "int", "mips_move_to_gpr_cost", "(", "reg_class_t", "from", ")", "{", "switch", "(", "from", ")", "{", "case", "M16_REGS", ":", "case", "GENERAL_REGS", ":", "return", "2", ";", "case", "ACC_REGS", ":", "return", "6", ";", "case", "FP_REGS", ":", "return", "4", ";", "case", "COP0_REGS", ":", "case", "COP2_REGS", ":", "case", "COP3_REGS", ":", "return", "5", ";", "default", ":", "return", "0", ";", "}", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "moving", "a", "value", "from", "a", "register", "of", "class", "FROM", "to", "a", "GPR", ".", "Return", "0", "for", "classes", "that", "are", "unions", "of", "other", "classes", "handled", "by", "this", "function", "."], "TS_V_token": ["mips", "2", "6", "4", "5", "0"], "File": "mips", "Func": "mips_move_to_gpr_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33087, "Length": 53} {"ground_truth": ["", "const", "char", "*", "mips_msa_output_division", "(", "const", "char", "*", "division", ",", "rtx", "*", "operands", ")", "{", "const", "char", "*", "s", ";", "s", "=", "division", ";", "if", "(", "TARGET_CHECK_ZERO_DIV", ")", "{", "output_asm_insn", "(", "\"%(bnz.%v0\\t%w2,1f\"", ",", "operands", ")", ";", "output_asm_insn", "(", "s", ",", "operands", ")", ";", "s", "=", "\"break\\t7%)\\n1:\"", ";", "}", "return", "s", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "code", "for", "MSA", "DIV_", "{", "S", ",", "U", "}", ".DF", "or", "MOD_", "{", "S", ",", "U", "}", ".DF", "instructions", ",", "which", "has", "the", "operands", "given", "by", "OPERANDS", ".", "Add", "in", "a", "divide-by-zero", "check", "if", "needed", "."], "TS_V_token": ["mips", "\"%(bnz.%v0\\t%w2,1f\"", "\"break\\t7%)\\n1:\""], "File": "mips", "Func": "mips_msa_output_division", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33088, "Length": 52} {"ground_truth": ["", "const", "char", "*", "mips_msa_output_shift_immediate", "(", "const", "char", "*", "shift", ",", "rtx", "*", "operands", ")", "{", "rtx", "amount", "=", "operands", "[", "2", "]", ";", "machine_mode", "mode", "=", "amount", "->", "mode", ";", "unsigned", "val", "=", "UINTVAL", "(", "CONST_VECTOR_ELT", "(", "amount", ",", "0", ")", ")", ";", "val", "&=", "GET_MODE_UNIT_BITSIZE", "(", "mode", ")", "-", "1", ";", "if", "(", "!", "val", ")", "return", "\"\"", ";", "rtx", "c", "=", "gen_int_mode", "(", "val", ",", "GET_MODE_INNER", "(", "mode", ")", ")", ";", "operands", "[", "2", "]", "=", "gen_const_vec_duplicate", "(", "mode", ",", "c", ")", ";", "return", "shift", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "code", "for", "MSA", "immediate", "shift", "instructions", ",", "which", "has", "the", "operands", "given", "by", "OPERANDS", ".", "Truncate", "the", "shift", "amount", "to", "make", "GAS", "happy", "."], "TS_V_token": ["mips", "2", "0", "1", "\"\"", "2"], "File": "mips", "Func": "mips_msa_output_shift_immediate", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33089, "Length": 89} {"ground_truth": ["", "rtx", "mips_msa_vec_parallel_const_half", "(", "machine_mode", "mode", ",", "bool", "high_p", ")", "{", "int", "nunits", "=", "GET_MODE_NUNITS", "(", "mode", ")", ";", "rtvec", "v", "=", "rtvec_alloc", "(", "nunits", "/", "2", ")", ";", "int", "base", ";", "int", "i", ";", "if", "(", "BYTES_BIG_ENDIAN", ")", "base", "=", "high_p", "?", "0", ":", "nunits", "/", "2", ";", "else", "base", "=", "high_p", "?", "nunits", "/", "2", ":", "0", ";", "for", "(", "i", "=", "0", ";", "i", "<", "nunits", "/", "2", ";", "i", "++", ")", "RTVEC_ELT", "(", "v", ",", "i", ")", "=", "GEN_INT", "(", "base", "+", "i", ")", ";", "return", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "v", ")", ";", "}", ""], "natrual_language": ["Construct", "and", "return", "PARALLEL", "RTX", "with", "CONST_INTs", "for", "HIGH", "(", "high_p", "==", "TRUE", ")", "or", "LOW", "(", "high_p", "==", "FALSE", ")", "half", "of", "a", "vector", "for", "mode", "MODE", "."], "TS_V_token": ["mips", "2", "0", "2", "2", "0", "0", "2"], "File": "mips", "Func": "mips_msa_vec_parallel_const_half", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33090, "Length": 97} {"ground_truth": ["", "mulsidi3_gen_fn", "mips_mulsidi3_gen_fn", "(", "enum", "rtx_code", "ext_code", ")", "{", "bool", "signed_p", ";", "signed_p", "=", "ext_code", "==", "SIGN_EXTEND", ";", "if", "(", "TARGET_64BIT", ")", "{", "if", "(", "ISA_HAS_R6DMUL", ")", "return", "signed_p", "?", "gen_mulsidi3_64bit_r6dmul", ":", "NULL", ";", "if", "(", "ISA_HAS_DMUL3", ")", "return", "signed_p", "?", "gen_mulsidi3_64bit_dmul", ":", "NULL", ";", "if", "(", "TARGET_MIPS16", ")", "return", "(", "signed_p", "?", "gen_mulsidi3_64bit_mips16", ":", "gen_umulsidi3_64bit_mips16", ")", ";", "if", "(", "TARGET_FIX_R4000", ")", "return", "NULL", ";", "return", "signed_p", "?", "gen_mulsidi3_64bit", ":", "gen_umulsidi3_64bit", ";", "}", "else", "{", "if", "(", "ISA_HAS_R6MUL", ")", "return", "(", "signed_p", "?", "gen_mulsidi3_32bit_r6", ":", "gen_umulsidi3_32bit_r6", ")", ";", "if", "(", "TARGET_MIPS16", ")", "return", "(", "signed_p", "?", "gen_mulsidi3_32bit_mips16", ":", "gen_umulsidi3_32bit_mips16", ")", ";", "if", "(", "TARGET_FIX_R4000", "&&", "!", "ISA_HAS_DSP", ")", "return", "signed_p", "?", "gen_mulsidi3_32bit_r4000", ":", "gen_umulsidi3_32bit_r4000", ";", "return", "signed_p", "?", "gen_mulsidi3_32bit", ":", "gen_umulsidi3_32bit", ";", "}", "}", ""], "natrual_language": ["Return", "the", "function", "that", "is", "used", "to", "expand", "the", "<", "u", ">", "mulsidi3", "pattern", ".", "EXT_CODE", "is", "the", "code", "of", "the", "extension", "used", ".", "Return", "NULL", "if", "widening", "multiplication", "should", "n't", "be", "used", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_mulsidi3_gen_fn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33091, "Length": 123} {"ground_truth": ["", "static", "int", "mips_multipass_dfa_lookahead", "(", "void", ")", "{", "if", "(", "TUNE_SB1", ")", "return", "4", ";", "if", "(", "TUNE_LOONGSON_2EF", "||", "TUNE_GS464", "||", "TUNE_GS464E", ")", "return", "4", ";", "if", "(", "TUNE_OCTEON", "||", "TUNE_GS264E", ")", "return", "2", ";", "if", "(", "TUNE_P5600", "||", "TUNE_P6600", "||", "TUNE_I6400", ")", "return", "4", ";", "return", "0", ";", "}", ""], "natrual_language": ["Implements", "TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD", ".", "This", "should", "be", "as", "wide", "as", "the", "scheduling", "freedom", "in", "the", "DFA", "."], "TS_V_token": ["mips", "4", "4", "2", "4", "0"], "File": "mips", "Func": "mips_multipass_dfa_lookahead", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33092, "Length": 49} {"ground_truth": ["", "static", "struct", "mips_multi_member", "*", "mips_multi_add", "(", "void", ")", "{", "mips_multi_member", "empty", ";", "memset", "(", "&", "empty", ",", "0", ",", "sizeof", "(", "empty", ")", ")", ";", "return", "mips_multi_members", ".", "safe_push", "(", "empty", ")", ";", "}", ""], "natrual_language": ["Add", "a", "new", ",", "uninitialized", "member", "to", "the", "current", "multi-insn", "sequence", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_multi_add", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33093, "Length": 34} {"ground_truth": ["", "static", "void", "mips_multi_add_insn", "(", "const", "char", "*", "format", ",", "...", ")", "{", "struct", "mips_multi_member", "*", "member", ";", "va_list", "ap", ";", "unsigned", "int", "i", ";", "rtx", "op", ";", "member", "=", "mips_multi_add", "(", ")", ";", "member", "->", "is_label_p", "=", "false", ";", "member", "->", "format", "=", "format", ";", "va_start", "(", "ap", ",", "format", ")", ";", "i", "=", "0", ";", "while", "(", "(", "op", "=", "va_arg", "(", "ap", ",", "rtx", ")", ")", ")", "member", "->", "operands", "[", "i", "++", "]", "=", "op", ";", "va_end", "(", "ap", ")", ";", "mips_multi_num_insns", "++", ";", "}", ""], "natrual_language": ["Add", "a", "normal", "insn", "with", "the", "given", "asm", "format", "to", "the", "current", "multi-insn", "sequence", ".", "The", "other", "arguments", "are", "a", "null-terminated", "list", "of", "operands", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_multi_add_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33094, "Length": 88} {"ground_truth": ["", "static", "void", "mips_multi_add_label", "(", "const", "char", "*", "label", ")", "{", "struct", "mips_multi_member", "*", "member", ";", "member", "=", "mips_multi_add", "(", ")", ";", "member", "->", "is_label_p", "=", "true", ";", "member", "->", "format", "=", "label", ";", "}", ""], "natrual_language": ["Add", "the", "given", "label", "definition", "to", "the", "current", "multi-insn", "sequence", ".", "The", "definition", "should", "include", "the", "colon", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_multi_add_label", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33095, "Length": 34} {"ground_truth": ["", "static", "void", "mips_multi_copy_insn", "(", "unsigned", "int", "i", ")", "{", "struct", "mips_multi_member", "*", "member", ";", "member", "=", "mips_multi_add", "(", ")", ";", "memcpy", "(", "member", ",", "&", "mips_multi_members", "[", "i", "]", ",", "sizeof", "(", "*", "member", ")", ")", ";", "gcc_assert", "(", "!", "member", "->", "is_label_p", ")", ";", "}", ""], "natrual_language": ["Add", "a", "copy", "of", "an", "existing", "instruction", "to", "the", "current", "multi-insn", "sequence", ".", "I", "is", "the", "index", "of", "the", "instruction", "that", "should", "be", "copied", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_multi_copy_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33096, "Length": 46} {"ground_truth": ["", "static", "unsigned", "int", "mips_multi_last_index", "(", "void", ")", "{", "return", "mips_multi_members", ".", "length", "(", ")", "-", "1", ";", "}", ""], "natrual_language": ["Return", "the", "index", "of", "the", "last", "member", "of", "the", "current", "multi-insn", "sequence", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_multi_last_index", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33097, "Length": 18} {"ground_truth": ["", "static", "void", "mips_multi_set_operand", "(", "unsigned", "int", "i", ",", "unsigned", "int", "op", ",", "rtx", "x", ")", "{", "mips_multi_members", "[", "i", "]", ".", "operands", "[", "op", "]", "=", "x", ";", "}", ""], "natrual_language": ["Change", "the", "operand", "of", "an", "existing", "instruction", "in", "the", "current", "multi-insn", "sequence", ".", "I", "is", "the", "index", "of", "the", "instruction", ",", "OP", "is", "the", "index", "of", "the", "operand", ",", "and", "X", "is", "the", "new", "value", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_multi_set_operand", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33098, "Length": 29} {"ground_truth": ["", "static", "void", "mips_multi_start", "(", "void", ")", "{", "mips_multi_members", ".", "truncate", "(", "0", ")", ";", "mips_multi_num_insns", "=", "0", ";", "}", ""], "natrual_language": ["Start", "a", "new", "multi-insn", "sequence", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_multi_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33099, "Length": 19} {"ground_truth": ["", "static", "void", "mips_multi_write", "(", "void", ")", "{", "struct", "mips_multi_member", "*", "member", ";", "unsigned", "int", "i", ";", "FOR_EACH_VEC_ELT", "(", "mips_multi_members", ",", "i", ",", "member", ")", "if", "(", "member", "->", "is_label_p", ")", "fprintf", "(", "asm_out_file", ",", "\"%s\\n\"", ",", "member", "->", "format", ")", ";", "else", "output_asm_insn", "(", "member", "->", "format", ",", "member", "->", "operands", ")", ";", "}", ""], "natrual_language": ["Write", "out", "the", "asm", "code", "for", "the", "current", "multi-insn", "sequence", "."], "TS_V_token": ["mips", "\"%s\\n\""], "File": "mips", "Func": "mips_multi_write", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33100, "Length": 54} {"ground_truth": ["", "static", "bool", "mips_mult_move_p", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "return", "(", "(", "split_type", "!=", "SPLIT_FOR_SPEED", "||", "mips_tuning_info", ".", "fast_mult_zero_zero_p", ")", "&&", "src", "==", "const0_rtx", "&&", "REG_P", "(", "dest", ")", "&&", "GET_MODE_SIZE", "(", "GET_MODE", "(", "dest", ")", ")", "==", "2", "*", "UNITS_PER_WORD", "&&", "(", "ISA_HAS_DSP_MULT", "?", "ACC_REG_P", "(", "REGNO", "(", "dest", ")", ")", ":", "MD_REG_P", "(", "REGNO", "(", "dest", ")", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "SRC", "should", "be", "moved", "into", "DEST", "using", "``", "MULT", "$", "0", ",", "$", "0", "''", ".", "SPLIT_TYPE", "is", "the", "condition", "under", "which", "moves", "should", "be", "split", "."], "TS_V_token": ["mips", "2"], "File": "mips", "Func": "mips_mult_move_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33101, "Length": 70} {"ground_truth": ["", "static", "unsigned", "int", "mips_mult_zero_zero_cost", "(", "struct", "mips_sim", "*", "state", ",", "bool", "setting", ")", "{", "mips_tuning_info", ".", "fast_mult_zero_zero_p", "=", "setting", ";", "start_sequence", "(", ")", ";", "machine_mode", "dword_mode", "=", "TARGET_64BIT", "?", "TImode", ":", "DImode", ";", "rtx", "hilo", "=", "gen_rtx_REG", "(", "dword_mode", ",", "MD_REG_FIRST", ")", ";", "mips_emit_move_or_split", "(", "hilo", ",", "const0_rtx", ",", "SPLIT_FOR_SPEED", ")", ";", "if", "(", "dword_mode", "==", "DImode", "&&", "HAVE_maddsidi4", ")", "{", "rtx", "gpr", "=", "gen_rtx_REG", "(", "SImode", ",", "GP_REG_FIRST", "+", "4", ")", ";", "emit_insn", "(", "gen_maddsidi4", "(", "hilo", ",", "gpr", ",", "gpr", ",", "hilo", ")", ")", ";", "}", "unsigned", "int", "time", "=", "mips_seq_time", "(", "state", ",", "get_insns", "(", ")", ")", ";", "end_sequence", "(", ")", ";", "return", "time", ";", "}", ""], "natrual_language": ["Return", "the", "execution-time", "cost", "of", "mips_tuning_info.fast_mult_zero_zero_p", "setting", "SETTING", ",", "using", "STATE", "to", "simulate", "instruction", "sequences", "."], "TS_V_token": ["mips", "4"], "File": "mips", "Func": "mips_mult_zero_zero_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33102, "Length": 109} {"ground_truth": ["", "static", "bool", "mips_near_type_p", "(", "const_tree", "type", ")", "{", "return", "(", "lookup_attribute", "(", "\"short_call\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", "||", "lookup_attribute", "(", "\"near\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", ")", ";", "}", ""], "natrual_language": ["Predicates", "to", "test", "for", "presence", "of", "``", "near", "''", "and", "``", "far", "''", "/", "''", "long_call", "''", "attributes", "on", "the", "given", "TYPE", "."], "TS_V_token": ["mips", "\"short_call\"", "\"near\""], "File": "mips", "Func": "mips_near_type_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33103, "Length": 36} {"ground_truth": ["", "static", "bool", "mips_need_noat_wrapper_p", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "opvec", ",", "int", "noperands", ")", "{", "if", "(", "recog_memoized", "(", "insn", ")", ">=", "0", ")", "{", "subrtx_iterator", "::", "array_type", "array", ";", "for", "(", "int", "i", "=", "0", ";", "i", "<", "noperands", ";", "i", "++", ")", "FOR_EACH_SUBRTX", "(", "iter", ",", "array", ",", "opvec", "[", "i", "]", ",", "NONCONST", ")", "if", "(", "REG_P", "(", "*", "iter", ")", "&&", "REGNO", "(", "*", "iter", ")", "==", "AT_REGNUM", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "INSN", "needs", "to", "be", "wrapped", "in", "``", ".set", "noat", "''", ".", "INSN", "has", "NOPERANDS", "operands", ",", "stored", "in", "OPVEC", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_need_noat_wrapper_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33104, "Length": 82} {"ground_truth": ["", "static", "bool", "mips_no_speculation_in_delay_slots_p", "(", ")", "{", "return", "TARGET_CB_MAYBE", ";", "}", ""], "natrual_language": ["Implement", "TARGET_NO_SPECULATION_IN_DELAY_SLOTS_P", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_no_speculation_in_delay_slots_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33105, "Length": 10} {"ground_truth": ["", "static", "bool", "mips_offset_within_alignment_p", "(", "rtx", "x", ",", "HOST_WIDE_INT", "offset", ")", "{", "HOST_WIDE_INT", "align", ";", "align", "=", "SYMBOL_REF_DECL", "(", "x", ")", "?", "DECL_ALIGN_UNIT", "(", "SYMBOL_REF_DECL", "(", "x", ")", ")", ":", "1", ";", "return", "IN_RANGE", "(", "offset", ",", "0", ",", "align", "-", "1", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OFFSET", "is", "within", "the", "range", "[", "0", ",", "ALIGN", ")", ",", "where", "ALIGN", "is", "the", "alignment", "in", "bytes", "of", "SYMBOL_REF", "X", "."], "TS_V_token": ["mips", "1", "0", "1"], "File": "mips", "Func": "mips_offset_within_alignment_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33106, "Length": 44} {"ground_truth": ["", "static", "bool", "mips_ok_for_lazy_binding_p", "(", "rtx", "x", ")", "{", "return", "(", "TARGET_USE_GOT", "&&", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", "&&", "!", "SYMBOL_REF_BIND_NOW_P", "(", "x", ")", "&&", "!", "mips_symbol_binds_local_p", "(", "x", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "calls", "to", "X", "can", "use", "R_MIPS_CALL", "*", "relocations", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_ok_for_lazy_binding_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33107, "Length": 33} {"ground_truth": ["", "static", "bool", "mips_orphaned_high_part_p", "(", "mips_offset_table", "*", "htab", ",", "rtx_insn", "*", "insn", ")", "{", "enum", "mips_symbol_type", "type", ";", "rtx", "x", ",", "set", ";", "set", "=", "single_set", "(", "insn", ")", ";", "if", "(", "set", ")", "{", "x", "=", "SET_SRC", "(", "set", ")", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "HIGH", "&&", "absolute_symbolic_operand", "(", "XEXP", "(", "x", ",", "0", ")", ",", "VOIDmode", ")", ")", "return", "!", "mips_lo_sum_offset_lookup", "(", "htab", ",", "XEXP", "(", "x", ",", "0", ")", ",", "NO_INSERT", ")", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "UNSPEC", "&&", "XINT", "(", "x", ",", "1", ")", "==", "UNSPEC_LOAD_GOT", "&&", "mips_symbolic_constant_p", "(", "XVECEXP", "(", "x", ",", "0", ",", "1", ")", ",", "SYMBOL_CONTEXT_LEA", ",", "&", "type", ")", "&&", "type", "==", "SYMBOL_GOTOFF_PAGE", ")", "return", "!", "mips_lo_sum_offset_lookup", "(", "htab", ",", "XVECEXP", "(", "x", ",", "0", ",", "1", ")", ",", "NO_INSERT", ")", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "INSN", "is", "a", "SET", "of", "an", "orphaned", "high-part", "relocation", ".", "HTAB", "is", "a", "hash", "table", "of", "mips_lo_sum_offsets", "that", "describes", "all", "the", "LO_SUMs", "in", "the", "current", "function", "."], "TS_V_token": ["mips", "0", "0", "1", "0", "1", "0", "1"], "File": "mips", "Func": "mips_orphaned_high_part_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33108, "Length": 140} {"ground_truth": ["", "static", "void", "mips_output_32bit_xfer", "(", "char", "direction", ",", "unsigned", "int", "gpreg", ",", "unsigned", "int", "fpreg", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"\\tm%cc1\\t%s,%s\\n\"", ",", "direction", ",", "reg_names", "[", "gpreg", "]", ",", "reg_names", "[", "fpreg", "]", ")", ";", "}", ""], "natrual_language": ["Write", "instructions", "to", "move", "a", "32-bit", "value", "between", "general", "register", "GPREG", "and", "floating-point", "register", "FPREG", ".", "DIRECTION", "is", "'t", "'", "to", "move", "from", "GPREG", "to", "FPREG", "and", "'", "f", "'", "to", "move", "in", "the", "opposite", "direction", "."], "TS_V_token": ["mips", "\"\\tm%cc1\\t%s,%s\\n\""], "File": "mips", "Func": "mips_output_32bit_xfer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33109, "Length": 36} {"ground_truth": ["", "static", "void", "mips_output_64bit_xfer", "(", "char", "direction", ",", "unsigned", "int", "gpreg", ",", "unsigned", "int", "fpreg", ")", "{", "if", "(", "TARGET_64BIT", ")", "fprintf", "(", "asm_out_file", ",", "\"\\tdm%cc1\\t%s,%s\\n\"", ",", "direction", ",", "reg_names", "[", "gpreg", "]", ",", "reg_names", "[", "fpreg", "]", ")", ";", "else", "if", "(", "ISA_HAS_MXHC1", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"\\tm%cc1\\t%s,%s\\n\"", ",", "direction", ",", "reg_names", "[", "gpreg", "+", "TARGET_BIG_ENDIAN", "]", ",", "reg_names", "[", "fpreg", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tm%chc1\\t%s,%s\\n\"", ",", "direction", ",", "reg_names", "[", "gpreg", "+", "TARGET_LITTLE_ENDIAN", "]", ",", "reg_names", "[", "fpreg", "]", ")", ";", "}", "else", "if", "(", "TARGET_FLOATXX", "&&", "direction", "==", "'t'", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"\\tsw\\t%s,0($sp)\\n\"", ",", "reg_names", "[", "gpreg", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tsw\\t%s,4($sp)\\n\"", ",", "reg_names", "[", "gpreg", "+", "1", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tldc1\\t%s,0($sp)\\n\"", ",", "reg_names", "[", "fpreg", "]", ")", ";", "}", "else", "if", "(", "TARGET_FLOATXX", "&&", "direction", "==", "'f'", ")", "{", "fprintf", "(", "asm_out_file", ",", "\"\\tsdc1\\t%s,0($sp)\\n\"", ",", "reg_names", "[", "fpreg", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tlw\\t%s,0($sp)\\n\"", ",", "reg_names", "[", "gpreg", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tlw\\t%s,4($sp)\\n\"", ",", "reg_names", "[", "gpreg", "+", "1", "]", ")", ";", "}", "else", "{", "fprintf", "(", "asm_out_file", ",", "\"\\tm%cc1\\t%s,%s\\n\"", ",", "direction", ",", "reg_names", "[", "gpreg", "+", "TARGET_BIG_ENDIAN", "]", ",", "reg_names", "[", "fpreg", "]", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\tm%cc1\\t%s,%s\\n\"", ",", "direction", ",", "reg_names", "[", "gpreg", "+", "TARGET_LITTLE_ENDIAN", "]", ",", "reg_names", "[", "fpreg", "+", "1", "]", ")", ";", "}", "}", ""], "natrual_language": ["Likewise", "for", "64-bit", "values", "."], "TS_V_token": ["mips", "\"\\tdm%cc1\\t%s,%s\\n\"", "\"\\tm%cc1\\t%s,%s\\n\"", "\"\\tm%chc1\\t%s,%s\\n\"", "\"\\tsw\\t%s,0($sp)\\n\"", "\"\\tsw\\t%s,4($sp)\\n\"", "1", "\"\\tldc1\\t%s,0($sp)\\n\"", "\"\\tsdc1\\t%s,0($sp)\\n\"", "\"\\tlw\\t%s,0($sp)\\n\"", "\"\\tlw\\t%s,4($sp)\\n\"", "1", "\"\\tm%cc1\\t%s,%s\\n\"", "\"\\tm%cc1\\t%s,%s\\n\"", "1"], "File": "mips", "Func": "mips_output_64bit_xfer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33110, "Length": 234} {"ground_truth": ["", "void", "mips_output_aligned_decl_common", "(", "FILE", "*", "stream", ",", "tree", "decl", ",", "const", "char", "*", "name", ",", "unsigned", "HOST_WIDE_INT", "size", ",", "unsigned", "int", "align", ")", "{", "if", "(", "TARGET_EMBEDDED_DATA", "&&", "TARGET_UNINIT_CONST_IN_RODATA", "&&", "TREE_CODE", "(", "decl", ")", "==", "VAR_DECL", "&&", "TREE_READONLY", "(", "decl", ")", "&&", "(", "DECL_INITIAL", "(", "decl", ")", "==", "0", "||", "DECL_INITIAL", "(", "decl", ")", "==", "error_mark_node", ")", ")", "{", "if", "(", "TREE_PUBLIC", "(", "decl", ")", "&&", "DECL_NAME", "(", "decl", ")", ")", "targetm", ".", "asm_out", ".", "globalize_label", "(", "stream", ",", "name", ")", ";", "switch_to_section", "(", "readonly_data_section", ")", ";", "ASM_OUTPUT_ALIGN", "(", "stream", ",", "floor_log2", "(", "align", "/", "BITS_PER_UNIT", ")", ")", ";", "mips_declare_object", "(", "stream", ",", "name", ",", "\"\"", ",", "\":\\n\\t.space\\t\"", "HOST_WIDE_INT_PRINT_UNSIGNED", "\"\\n\"", ",", "size", ")", ";", "}", "else", "mips_declare_common_object", "(", "stream", ",", "name", ",", "\"\\n\\t.comm\\t\"", ",", "size", ",", "align", ",", "true", ")", ";", "}", ""], "natrual_language": ["Implement", "ASM_OUTPUT_ALIGNED_DECL_COMMON", ".", "This", "is", "usually", "the", "same", "as", "the", "elfos.h", "version", ",", "but", "we", "also", "need", "to", "handle", "-muninit-const-in-rodata", "."], "TS_V_token": ["mips", "0", "\"\"", "\":\\n\\t.space\\t\"", "\"\\n\"", "\"\\n\\t.comm\\t\""], "File": "mips", "Func": "mips_output_aligned_decl_common", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33111, "Length": 132} {"ground_truth": ["", "static", "void", "mips_output_args_xfer", "(", "int", "fp_code", ",", "char", "direction", ")", "{", "unsigned", "int", "gparg", ",", "fparg", ",", "f", ";", "CUMULATIVE_ARGS", "cum", ";", "gcc_assert", "(", "TARGET_OLDABI", ")", ";", "mips_init_cumulative_args", "(", "&", "cum", ",", "NULL", ")", ";", "for", "(", "f", "=", "(", "unsigned", "int", ")", "fp_code", ";", "f", "!=", "0", ";", "f", ">>=", "2", ")", "{", "machine_mode", "mode", ";", "struct", "mips_arg_info", "info", ";", "if", "(", "(", "f", "&", "3", ")", "==", "1", ")", "mode", "=", "SFmode", ";", "else", "if", "(", "(", "f", "&", "3", ")", "==", "2", ")", "mode", "=", "DFmode", ";", "else", "gcc_unreachable", "(", ")", ";", "mips_get_arg_info", "(", "&", "info", ",", "&", "cum", ",", "mode", ",", "NULL", ",", "true", ")", ";", "gparg", "=", "mips_arg_regno", "(", "&", "info", ",", "false", ")", ";", "fparg", "=", "mips_arg_regno", "(", "&", "info", ",", "true", ")", ";", "if", "(", "mode", "==", "SFmode", ")", "mips_output_32bit_xfer", "(", "direction", ",", "gparg", ",", "fparg", ")", ";", "else", "mips_output_64bit_xfer", "(", "direction", ",", "gparg", ",", "fparg", ")", ";", "function_arg_info", "arg", "(", "mode", ",", "true", ")", ";", "mips_function_arg_advance", "(", "pack_cumulative_args", "(", "&", "cum", ")", ",", "arg", ")", ";", "}", "}", ""], "natrual_language": ["Write", "out", "code", "to", "move", "floating-point", "arguments", "into", "or", "out", "of", "general", "registers", ".", "FP_CODE", "is", "the", "code", "describing", "which", "arguments", "are", "present", "(", "see", "the", "comment", "above", "the", "definition", "of", "CUMULATIVE_ARGS", "in", "mips.h", ")", ".", "DIRECTION", "is", "as", "for", "mips_output_32bit_xfer", "."], "TS_V_token": ["mips", "0", "2", "3", "1", "3", "2"], "File": "mips", "Func": "mips_output_args_xfer", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33112, "Length": 176} {"ground_truth": ["", "void", "mips_output_ascii", "(", "FILE", "*", "stream", ",", "const", "char", "*", "string", ",", "size_t", "len", ")", "{", "size_t", "i", ";", "int", "cur_pos", ";", "cur_pos", "=", "17", ";", "fprintf", "(", "stream", ",", "\"\\t.ascii\\t\\\"\"", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "len", ";", "i", "++", ")", "{", "int", "c", ";", "c", "=", "(", "unsigned", "char", ")", "string", "[", "i", "]", ";", "if", "(", "ISPRINT", "(", "c", ")", ")", "{", "if", "(", "c", "==", "'\\\\'", "||", "c", "==", "'\\\"'", ")", "{", "putc", "(", "'\\\\'", ",", "stream", ")", ";", "cur_pos", "++", ";", "}", "putc", "(", "c", ",", "stream", ")", ";", "cur_pos", "++", ";", "}", "else", "{", "fprintf", "(", "stream", ",", "\"\\\\%03o\"", ",", "c", ")", ";", "cur_pos", "+=", "4", ";", "}", "if", "(", "cur_pos", ">", "72", "&&", "i", "+", "1", "<", "len", ")", "{", "cur_pos", "=", "17", ";", "fprintf", "(", "stream", ",", "\"\\\"\\n\\t.ascii\\t\\\"\"", ")", ";", "}", "}", "fprintf", "(", "stream", ",", "\"\\\"\\n\"", ")", ";", "}", ""], "natrual_language": ["Output", "an", "ASCII", "string", ",", "in", "a", "space-saving", "way", ".", "PREFIX", "is", "the", "string", "that", "should", "be", "written", "before", "the", "opening", "quote", ",", "such", "as", "``", "\\t.ascii\\t", "''", "for", "real", "string", "data", "or", "``", "\\t", "#", "``", "for", "a", "comment", "."], "TS_V_token": ["mips", "17", "\"\\t.ascii\\t\\\"\"", "0", "\"\\\\%03o\"", "4", "72", "1", "17", "\"\\\"\\n\\t.ascii\\t\\\"\"", "\"\\\"\\n\""], "File": "mips", "Func": "mips_output_ascii", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33113, "Length": 152} {"ground_truth": ["", "const", "char", "*", "mips_output_conditional_branch", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ",", "const", "char", "*", "branch_if_true", ",", "const", "char", "*", "branch_if_false", ")", "{", "unsigned", "int", "length", ";", "rtx", "taken", ";", "gcc_assert", "(", "LABEL_P", "(", "operands", "[", "0", "]", ")", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", "<=", "8", ")", "{", "mips_branch_likely", "=", "(", "final_sequence", "&&", "INSN_ANNULLED_BRANCH_P", "(", "insn", ")", ")", ";", "return", "branch_if_true", ";", "}", "mips_branch_likely", "=", "false", ";", "rtx_code_label", "*", "not_taken", "=", "gen_label_rtx", "(", ")", ";", "taken", "=", "operands", "[", "0", "]", ";", "operands", "[", "0", "]", "=", "not_taken", ";", "output_asm_insn", "(", "branch_if_false", ",", "operands", ")", ";", "if", "(", "final_sequence", ")", "{", "if", "(", "!", "INSN_ANNULLED_BRANCH_P", "(", "insn", ")", ")", "{", "final_scan_insn", "(", "final_sequence", "->", "insn", "(", "1", ")", ",", "asm_out_file", ",", "optimize", ",", "1", ",", "NULL", ")", ";", "final_sequence", "->", "insn", "(", "1", ")", "->", "set_deleted", "(", ")", ";", "}", "else", "output_asm_insn", "(", "\"nop\"", ",", "0", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\n\"", ")", ";", "}", "if", "(", "TARGET_ABSOLUTE_JUMPS", "&&", "TARGET_CB_MAYBE", ")", "{", "if", "(", "!", "final_sequence", ")", "{", "output_asm_insn", "(", "\"nop\\t\\t# hazard nop\"", ",", "0", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\n\"", ")", ";", "}", "output_asm_insn", "(", "MIPS_ABSOLUTE_JUMP", "(", "\"bc\\t%0\"", ")", ",", "&", "taken", ")", ";", "}", "else", "if", "(", "TARGET_ABSOLUTE_JUMPS", ")", "output_asm_insn", "(", "MIPS_ABSOLUTE_JUMP", "(", "\"j\\t%0%/\"", ")", ",", "&", "taken", ")", ";", "else", "{", "mips_output_load_label", "(", "taken", ")", ";", "if", "(", "TARGET_CB_MAYBE", ")", "output_asm_insn", "(", "\"jrc\\t%@%]\"", ",", "0", ")", ";", "else", "output_asm_insn", "(", "\"jr\\t%@%]%/\"", ",", "0", ")", ";", "}", "if", "(", "final_sequence", ")", "{", "if", "(", "INSN_ANNULLED_BRANCH_P", "(", "insn", ")", ")", "{", "final_scan_insn", "(", "final_sequence", "->", "insn", "(", "1", ")", ",", "asm_out_file", ",", "optimize", ",", "1", ",", "NULL", ")", ";", "final_sequence", "->", "insn", "(", "1", ")", "->", "set_deleted", "(", ")", ";", "}", "else", "if", "(", "TARGET_CB_NEVER", ")", "output_asm_insn", "(", "\"nop\"", ",", "0", ")", ";", "fprintf", "(", "asm_out_file", ",", "\"\\n\"", ")", ";", "}", "targetm", ".", "asm_out", ".", "internal_label", "(", "asm_out_file", ",", "\"L\"", ",", "CODE_LABEL_NUMBER", "(", "not_taken", ")", ")", ";", "return", "\"\"", ";", "}", ""], "natrual_language": ["Output", "assembly", "instructions", "to", "peform", "a", "conditional", "branch", ".", "INSN", "is", "the", "branch", "instruction", ".", "OPERANDS", "[", "0", "]", "is", "the", "condition", ".", "OPERANDS", "[", "1", "]", "is", "the", "target", "of", "the", "branch", ".", "OPERANDS", "[", "2", "]", "is", "the", "target", "of", "the", "first", "operand", "to", "the", "condition", ".", "If", "TWO_OPERANDS_P", "is", "nonzero", "the", "comparison", "takes", "two", "operands", ";", "OPERANDS", "[", "3", "]", "will", "be", "the", "second", "operand", ".", "If", "INVERTED_P", "is", "nonzero", "we", "are", "to", "branch", "if", "the", "condition", "does", "not", "hold", ".", "If", "FLOAT_P", "is", "nonzero", "this", "is", "a", "floating-point", "comparison", ".", "LENGTH", "is", "the", "length", "(", "in", "bytes", ")", "of", "the", "sequence", "we", "are", "to", "generate", ".", "That", "tells", "us", "whether", "to", "generate", "a", "simple", "conditional", "branch", ",", "or", "a", "reversed", "conditional", "branch", "around", "a", "`", "jr", "'", "instruction", "."], "TS_V_token": ["mips", "0", "8", "0", "0", "1", "1", "1", "\"nop\"", "0", "\"\\n\"", "\"nop\\t\\t# hazard nop\"", "0", "\"\\n\"", "\"bc\\t%0\"", "\"j\\t%0%/\"", "\"jrc\\t%@%]\"", "0", "\"jr\\t%@%]%/\"", "0", "1", "1", "1", "\"nop\"", "0", "\"\\n\"", "\"L\"", "\"\""], "File": "mips", "Func": "mips_output_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33114, "Length": 330} {"ground_truth": ["", "static", "void", "mips_output_cplocal", "(", "void", ")", "{", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", "&&", "mips_must_initialize_gp_p", "(", ")", "&&", "cfun", "->", "machine", "->", "global_pointer", "!=", "GLOBAL_POINTER_REGNUM", ")", "output_asm_insn", "(", "\".cplocal %+\"", ",", "0", ")", ";", "}", ""], "natrual_language": ["If", "we", "'re", "generating", "n32", "or", "n64", "abicalls", ",", "and", "the", "current", "function", "does", "not", "use", "$", "28", "as", "its", "global", "pointer", ",", "emit", "a", "cplocal", "directive", ".", "Use", "pic_offset_table_rtx", "as", "the", "argument", "to", "the", "directive", "."], "TS_V_token": ["mips", "\".cplocal %+\"", "0"], "File": "mips", "Func": "mips_output_cplocal", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33115, "Length": 32} {"ground_truth": ["", "static", "void", "ATTRIBUTE_UNUSED", "mips_output_dwarf_dtprel", "(", "FILE", "*", "file", ",", "int", "size", ",", "rtx", "x", ")", "{", "switch", "(", "size", ")", "{", "case", "4", ":", "fputs", "(", "\"\\t.dtprelword\\t\"", ",", "file", ")", ";", "break", ";", "case", "8", ":", "fputs", "(", "\"\\t.dtpreldword\\t\"", ",", "file", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "output_addr_const", "(", "file", ",", "x", ")", ";", "fputs", "(", "\"+0x8000\"", ",", "file", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_OUTPUT_DWARF_DTPREL", "."], "TS_V_token": ["mips", "4", "\"\\t.dtprelword\\t\"", "8", "\"\\t.dtpreldword\\t\"", "\"+0x8000\""], "File": "mips", "Func": "mips_output_dwarf_dtprel", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33116, "Length": 67} {"ground_truth": ["", "const", "char", "*", "mips_output_equal_conditional_branch", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ",", "bool", "inverted_p", ")", "{", "const", "char", "*", "branch", "[", "2", "]", ";", "if", "(", "TARGET_MICROMIPS", "&&", "mips_isa_rev", "<=", "5", "&&", "operands", "[", "3", "]", "==", "const0_rtx", "&&", "get_attr_length", "(", "insn", ")", "<=", "8", ")", "{", "if", "(", "mips_cb", "==", "MIPS_CB_OPTIMAL", ")", "{", "branch", "[", "!", "inverted_p", "]", "=", "\"%*b%C1z%:\\t%2,%0\"", ";", "branch", "[", "inverted_p", "]", "=", "\"%*b%N1z%:\\t%2,%0\"", ";", "}", "else", "{", "branch", "[", "!", "inverted_p", "]", "=", "\"%*b%C1z\\t%2,%0%/\"", ";", "branch", "[", "inverted_p", "]", "=", "\"%*b%N1z\\t%2,%0%/\"", ";", "}", "}", "else", "if", "(", "TARGET_CB_MAYBE", ")", "{", "if", "(", "operands", "[", "3", "]", "==", "const0_rtx", ")", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%C1z\"", ",", "\"%2,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%N1z\"", ",", "\"%2,%0\"", ")", ";", "}", "else", "if", "(", "REGNO", "(", "operands", "[", "2", "]", ")", "!=", "REGNO", "(", "operands", "[", "3", "]", ")", ")", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%C1\"", ",", "\"%2,%3,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%N1\"", ",", "\"%2,%3,%0\"", ")", ";", "}", "else", "{", "if", "(", "GET_CODE", "(", "operands", "[", "1", "]", ")", "==", "NE", ")", "inverted_p", "=", "!", "inverted_p", ";", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b\"", ",", "\"%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "\"%*\\t\\t# branch never\"", ";", "}", "}", "else", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"b%C1\"", ",", "\"%2,%z3,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"b%N1\"", ",", "\"%2,%z3,%0\"", ")", ";", "}", "return", "mips_output_conditional_branch", "(", "insn", ",", "operands", ",", "branch", "[", "1", "]", ",", "branch", "[", "0", "]", ")", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "code", "for", "INSN", ",", "which", "branches", "to", "OPERANDS", "[", "0", "]", "if", "some", "equality", "condition", "is", "true", ".", "The", "condition", "is", "given", "by", "OPERANDS", "[", "1", "]", "if", "!", "INVERTED_P", ",", "otherwise", "it", "is", "the", "inverse", "of", "OPERANDS", "[", "1", "]", ".", "OPERANDS", "[", "2", "]", "is", "the", "comparison", "'s", "first", "operand", ";", "OPERANDS", "[", "3", "]", "is", "the", "second", "operand", "and", "may", "be", "zero", "or", "a", "register", "."], "TS_V_token": ["mips", "2", "5", "3", "8", "\"%*b%C1z%:\\t%2,%0\"", "\"%*b%N1z%:\\t%2,%0\"", "\"%*b%C1z\\t%2,%0%/\"", "\"%*b%N1z\\t%2,%0%/\"", "3", "\"b%C1z\"", "\"%2,%0\"", "\"b%N1z\"", "\"%2,%0\"", "2", "3", "\"b%C1\"", "\"%2,%3,%0\"", "\"b%N1\"", "\"%2,%3,%0\"", "1", "\"b\"", "\"%0\"", "\"%*\\t\\t# branch never\"", "\"b%C1\"", "\"%2,%z3,%0\"", "\"b%N1\"", "\"%2,%z3,%0\"", "1", "0"], "File": "mips", "Func": "mips_output_equal_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33117, "Length": 266} {"ground_truth": ["", "void", "mips_output_external", "(", "FILE", "*", "file", ",", "tree", "decl", ",", "const", "char", "*", "name", ")", "{", "default_elf_asm_output_external", "(", "file", ",", "decl", ",", "name", ")", ";", "if", "(", "TREE_SYMBOL_REFERENCED", "(", "DECL_ASSEMBLER_NAME", "(", "decl", ")", ")", ")", "{", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", "&&", "mips_in_small_data_p", "(", "decl", ")", ")", "{", "fputs", "(", "\"\\t.extern\\t\"", ",", "file", ")", ";", "assemble_name", "(", "file", ",", "name", ")", ";", "fprintf", "(", "file", ",", "\", \"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "int_size_in_bytes", "(", "TREE_TYPE", "(", "decl", ")", ")", ")", ";", "}", "}", "}", ""], "natrual_language": ["When", "using", "assembler", "macros", ",", "keep", "track", "of", "all", "of", "small-data", "externs", "so", "that", "mips_file_end", "can", "emit", "the", "appropriate", "declarations", "for", "them", ".", "In", "most", "cases", "it", "would", "be", "safe", "(", "though", "pointless", ")", "to", "emit", ".externs", "for", "other", "symbols", "too", ".", "One", "exception", "is", "when", "an", "object", "is", "within", "the", "-G", "limit", "but", "declared", "by", "the", "user", "to", "be", "in", "a", "section", "other", "than", ".sbss", "or", ".sdata", "."], "TS_V_token": ["mips", "\"\\t.extern\\t\"", "\", \"", "\"\\n\""], "File": "mips", "Func": "mips_output_external", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33118, "Length": 81} {"ground_truth": ["", "static", "void", "mips_output_filename", "(", "FILE", "*", "stream", ",", "const", "char", "*", "name", ")", "{", "if", "(", "dwarf_debuginfo_p", "(", ")", ")", "return", ";", "else", "if", "(", "mips_output_filename_first_time", ")", "{", "mips_output_filename_first_time", "=", "0", ";", "num_source_filenames", "+=", "1", ";", "current_function_file", "=", "name", ";", "fprintf", "(", "stream", ",", "\"\\t.file\\t%d \"", ",", "num_source_filenames", ")", ";", "output_quoted_string", "(", "stream", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "stream", ")", ";", "}", "else", "if", "(", "write_symbols", "==", "DBX_DEBUG", ")", "return", ";", "else", "if", "(", "name", "!=", "current_function_file", "&&", "strcmp", "(", "name", ",", "current_function_file", ")", "!=", "0", ")", "{", "num_source_filenames", "+=", "1", ";", "current_function_file", "=", "name", ";", "fprintf", "(", "stream", ",", "\"\\t.file\\t%d \"", ",", "num_source_filenames", ")", ";", "output_quoted_string", "(", "stream", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "stream", ")", ";", "}", "}", ""], "natrual_language": ["Emit", "a", "new", "filename", "to", "a", "stream", ".", "If", "we", "are", "smuggling", "stabs", ",", "try", "to", "put", "out", "a", "MIPS", "ECOFF", "file", "and", "a", "stab", "."], "TS_V_token": ["mips", "0", "1", "\"\\t.file\\t%d \"", "0", "1", "\"\\t.file\\t%d \""], "File": "mips", "Func": "mips_output_filename", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33119, "Length": 123} {"ground_truth": ["", "static", "void", "mips_output_function_epilogue", "(", "FILE", "*", ")", "{", "const", "char", "*", "fnname", ";", "SET_REGNO", "(", "pic_offset_table_rtx", ",", "GLOBAL_POINTER_REGNUM", ")", ";", "mips_output_cplocal", "(", ")", ";", "if", "(", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "{", "mips_pop_asm_switch", "(", "&", "mips_nomacro", ")", ";", "mips_pop_asm_switch", "(", "&", "mips_noreorder", ")", ";", "}", "fnname", "=", "XSTR", "(", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ",", "0", ")", ";", "mips_end_function_definition", "(", "fnname", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_OUTPUT_FUNCTION_EPILOGUE", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_output_function_epilogue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33120, "Length": 69} {"ground_truth": ["", "static", "void", "mips_output_function_prologue", "(", "FILE", "*", "file", ")", "{", "const", "char", "*", "fnname", ";", "if", "(", "TARGET_MIPS16", "&&", "TARGET_HARD_FLOAT_ABI", "&&", "crtl", "->", "args", ".", "info", ".", "fp_code", "!=", "0", ")", "mips16_build_function_stub", "(", ")", ";", "fnname", "=", "XSTR", "(", "XEXP", "(", "DECL_RTL", "(", "current_function_decl", ")", ",", "0", ")", ",", "0", ")", ";", "mips_start_function_definition", "(", "fnname", ",", "TARGET_MIPS16", ")", ";", "if", "(", "!", "flag_inhibit_size_directive", ")", "{", "const", "struct", "mips_frame_info", "*", "frame", ";", "frame", "=", "&", "cfun", "->", "machine", "->", "frame", ";", "fprintf", "(", "file", ",", "\"\\t.frame\\t%s,\"", "HOST_WIDE_INT_PRINT_DEC", "\",%s\\t\\t\"", "\"# vars= \"", "HOST_WIDE_INT_PRINT_DEC", "\", regs= %d/%d\"", "\", args= \"", "HOST_WIDE_INT_PRINT_DEC", "\", gp= \"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "reg_names", "[", "frame_pointer_needed", "?", "HARD_FRAME_POINTER_REGNUM", ":", "STACK_POINTER_REGNUM", "]", ",", "(", "frame_pointer_needed", "?", "frame", "->", "total_size", "-", "frame", "->", "hard_frame_pointer_offset", ":", "frame", "->", "total_size", ")", ",", "reg_names", "[", "RETURN_ADDR_REGNUM", "]", ",", "frame", "->", "var_size", ",", "frame", "->", "num_gp", ",", "frame", "->", "num_fp", ",", "frame", "->", "args_size", ",", "frame", "->", "cprestore_size", ")", ";", "fprintf", "(", "file", ",", "\"\\t.mask\\t0x%08x,\"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "frame", "->", "mask", ",", "frame", "->", "gp_save_offset", ")", ";", "fprintf", "(", "file", ",", "\"\\t.fmask\\t0x%08x,\"", "HOST_WIDE_INT_PRINT_DEC", "\"\\n\"", ",", "frame", "->", "fmask", ",", "frame", "->", "fp_save_offset", ")", ";", "}", "if", "(", "mips_must_initialize_gp_p", "(", ")", "&&", "mips_current_loadgp_style", "(", ")", "==", "LOADGP_OLDABI", ")", "{", "if", "(", "TARGET_MIPS16", ")", "{", "output_asm_insn", "(", "\"li\\t$2,%%hi(_gp_disp)\"", ",", "0", ")", ";", "output_asm_insn", "(", "\"addiu\\t$3,$pc,%%lo(_gp_disp)\"", ",", "0", ")", ";", "output_asm_insn", "(", "\"sll\\t$2,16\"", ",", "0", ")", ";", "output_asm_insn", "(", "\"addu\\t$2,$3\"", ",", "0", ")", ";", "}", "else", "{", "mips_push_asm_switch", "(", "&", "mips_noreorder", ")", ";", "output_asm_insn", "(", "\".cpload\\t%^\"", ",", "0", ")", ";", "if", "(", "!", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "mips_pop_asm_switch", "(", "&", "mips_noreorder", ")", ";", "else", "mips_push_asm_switch", "(", "&", "mips_nomacro", ")", ";", "}", "}", "else", "if", "(", "cfun", "->", "machine", "->", "all_noreorder_p", ")", "{", "mips_push_asm_switch", "(", "&", "mips_noreorder", ")", ";", "mips_push_asm_switch", "(", "&", "mips_nomacro", ")", ";", "}", "mips_output_cplocal", "(", ")", ";", "}", ""], "natrual_language": ["Set", "up", "the", "stack", "and", "frame", "(", "if", "desired", ")", "for", "the", "function", "."], "TS_V_token": ["mips", "0", "0", "0", "\"\\t.frame\\t%s,\"", "\",%s\\t\\t\"", "\"# vars= \"", "\", regs= %d/%d\"", "\", args= \"", "\", gp= \"", "\"\\n\"", "\"\\t.mask\\t0x%08x,\"", "\"\\n\"", "\"\\t.fmask\\t0x%08x,\"", "\"\\n\"", "\"li\\t$2,%%hi(_gp_disp)\"", "0", "\"addiu\\t$3,$pc,%%lo(_gp_disp)\"", "0", "\"sll\\t$2,16\"", "0", "\"addu\\t$2,$3\"", "0", "\".cpload\\t%^\"", "0"], "File": "mips", "Func": "mips_output_function_prologue", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33121, "Length": 295} {"ground_truth": ["", "const", "char", "*", "mips_output_jump", "(", "rtx", "*", "operands", ",", "int", "target_opno", ",", "int", "size_opno", ",", "bool", "link_p", ")", "{", "static", "char", "buffer", "[", "300", "]", ";", "char", "*", "s", "=", "buffer", ";", "bool", "reg_p", "=", "REG_P", "(", "operands", "[", "target_opno", "]", ")", ";", "const", "char", "*", "and_link", "=", "link_p", "?", "\"al\"", ":", "\"\"", ";", "const", "char", "*", "reg", "=", "reg_p", "?", "\"r\"", ":", "\"\"", ";", "const", "char", "*", "compact", "=", "\"\"", ";", "const", "char", "*", "nop", "=", "\"%/\"", ";", "const", "char", "*", "short_delay", "=", "link_p", "?", "\"%!\"", ":", "\"\"", ";", "const", "char", "*", "insn_name", "=", "TARGET_CB_NEVER", "||", "reg_p", "?", "\"j\"", ":", "\"b\"", ";", "if", "(", "!", "final_sequence", "&&", "(", "TARGET_CB_MAYBE", "||", "(", "ISA_HAS_JRC", "&&", "!", "link_p", "&&", "reg_p", ")", ")", ")", "{", "compact", "=", "\"c\"", ";", "nop", "=", "\"\"", ";", "}", "if", "(", "TARGET_USE_GOT", "&&", "!", "TARGET_EXPLICIT_RELOCS", ")", "sprintf", "(", "s", ",", "\"%%*%s%s\\t%%%d%%/\"", ",", "insn_name", ",", "and_link", ",", "target_opno", ")", ";", "else", "{", "if", "(", "!", "reg_p", "&&", "TARGET_ABICALLS_PIC2", ")", "s", "+=", "sprintf", "(", "s", ",", "\".option\\tpic0\\n\\t\"", ")", ";", "if", "(", "reg_p", "&&", "mips_get_pic_call_symbol", "(", "operands", ",", "size_opno", ")", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%%*.reloc\\t1f,%s,%%%d\\n1:\\t\"", ",", "TARGET_MICROMIPS", "?", "\"R_MICROMIPS_JALR\"", ":", "\"R_MIPS_JALR\"", ",", "size_opno", ")", ";", "else", "s", "+=", "sprintf", "(", "s", ",", "\"%%*\"", ")", ";", "s", "+=", "sprintf", "(", "s", ",", "\"%s%s%s%s%s\\t%%%d%s\"", ",", "insn_name", ",", "and_link", ",", "reg", ",", "compact", ",", "short_delay", ",", "target_opno", ",", "nop", ")", ";", "if", "(", "!", "reg_p", "&&", "TARGET_ABICALLS_PIC2", ")", "s", "+=", "sprintf", "(", "s", ",", "\"\\n\\t.option\\tpic2\"", ")", ";", "}", "return", "buffer", ";", "}", ""], "natrual_language": ["Return", "the", "asm", "template", "for", "a", "call", ".", "OPERANDS", "are", "the", "operands", ",", "TARGET_OPNO", "is", "the", "operand", "number", "of", "the", "target", ".", "SIZE_OPNO", "is", "the", "operand", "number", "of", "the", "argument", "size", "operand", "that", "can", "optionally", "hold", "the", "call", "attributes", ".", "If", "SIZE_OPNO", "is", "not", "-1", "and", "the", "call", "is", "indirect", ",", "use", "the", "function", "symbol", "from", "the", "call", "attributes", "to", "attach", "a", "R_MIPS_JALR", "relocation", "to", "the", "call", ".", "LINK_P", "indicates", "whether", "the", "jump", "is", "a", "call", "and", "needs", "to", "set", "the", "link", "register", ".", "When", "generating", "GOT", "code", "without", "explicit", "relocation", "operators", ",", "all", "calls", "should", "use", "assembly", "macros", ".", "Otherwise", ",", "all", "indirect", "calls", "should", "use", "``", "jr", "''", "or", "``", "jalr", "''", ";", "we", "will", "arrange", "to", "restore", "$", "gp", "afterwards", "if", "necessary", ".", "Finally", ",", "we", "can", "only", "generate", "direct", "calls", "for", "-mabicalls", "by", "temporarily", "switching", "to", "non-PIC", "mode", ".", "For", "microMIPS", "jal", "(", "r", ")", ",", "we", "try", "to", "generate", "jal", "(", "r", ")", "s", "when", "a", "16-bit", "instruction", "is", "in", "the", "delay", "slot", "of", "jal", "(", "r", ")", ".", "Where", "compact", "branches", "are", "available", ",", "we", "try", "to", "use", "them", "if", "the", "delay", "slot", "has", "a", "NOP", "(", "or", "equivalently", "delay", "slots", "were", "not", "enabled", "for", "the", "instruction", "anyway", ")", "."], "TS_V_token": ["mips", "300", "\"al\"", "\"\"", "\"r\"", "\"\"", "\"\"", "\"%/\"", "\"%!\"", "\"\"", "\"j\"", "\"b\"", "\"c\"", "\"\"", "\"%%*%s%s\\t%%%d%%/\"", "\".option\\tpic0\\n\\t\"", "\"%%*.reloc\\t1f,%s,%%%d\\n1:\\t\"", "\"R_MICROMIPS_JALR\"", "\"R_MIPS_JALR\"", "\"%%*\"", "\"%s%s%s%s%s\\t%%%d%s\"", "\"\\n\\t.option\\tpic2\""], "File": "mips", "Func": "mips_output_jump", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33122, "Length": 251} {"ground_truth": ["", "void", "mips_output_load_label", "(", "rtx", "target", ")", "{", "mips_push_asm_switch", "(", "&", "mips_noat", ")", ";", "if", "(", "TARGET_EXPLICIT_RELOCS", ")", "{", "mips_process_load_label", "(", "target", ")", ";", "mips_multi_write", "(", ")", ";", "}", "else", "{", "if", "(", "Pmode", "==", "DImode", ")", "output_asm_insn", "(", "\"dla\\t%@,%0\"", ",", "&", "target", ")", ";", "else", "output_asm_insn", "(", "\"la\\t%@,%0\"", ",", "&", "target", ")", ";", "}", "}", ""], "natrual_language": ["Return", "an", "asm", "sequence", "to", "start", "a", "noat", "block", "and", "load", "the", "address", "of", "a", "label", "into", "$", "1", "."], "TS_V_token": ["mips", "\"dla\\t%@,%0\"", "\"la\\t%@,%0\""], "File": "mips", "Func": "mips_output_load_label", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33123, "Length": 55} {"ground_truth": ["", "static", "void", "mips_output_mi_thunk", "(", "FILE", "*", "file", ",", "tree", "thunk_fndecl", "ATTRIBUTE_UNUSED", ",", "HOST_WIDE_INT", "delta", ",", "HOST_WIDE_INT", "vcall_offset", ",", "tree", "function", ")", "{", "const", "char", "*", "fnname", "=", "IDENTIFIER_POINTER", "(", "DECL_ASSEMBLER_NAME", "(", "thunk_fndecl", ")", ")", ";", "rtx", "this_rtx", ",", "temp1", ",", "temp2", ",", "fnaddr", ";", "rtx_insn", "*", "insn", ";", "bool", "use_sibcall_p", ";", "reload_completed", "=", "1", ";", "emit_note", "(", "NOTE_INSN_PROLOGUE_END", ")", ";", "fnaddr", "=", "XEXP", "(", "DECL_RTL", "(", "function", ")", ",", "0", ")", ";", "use_sibcall_p", "=", "(", "mips_function_ok_for_sibcall", "(", "function", ",", "NULL", ")", "&&", "const_call_insn_operand", "(", "fnaddr", ",", "Pmode", ")", ")", ";", "if", "(", "!", "use_sibcall_p", "&&", "(", "mips_got_symbol_type_p", "(", "mips_classify_symbol", "(", "fnaddr", ",", "SYMBOL_CONTEXT_LEA", ")", ")", ")", ")", "{", "cfun", "->", "machine", "->", "global_pointer", "=", "TARGET_CALL_SAVED_GP", "?", "15", ":", "GLOBAL_POINTER_REGNUM", ";", "cfun", "->", "machine", "->", "must_initialize_gp_p", "=", "true", ";", "SET_REGNO", "(", "pic_offset_table_rtx", ",", "cfun", "->", "machine", "->", "global_pointer", ")", ";", "mips_emit_loadgp", "(", ")", ";", "}", "temp1", "=", "gen_rtx_REG", "(", "Pmode", ",", "2", ")", ";", "temp2", "=", "gen_rtx_REG", "(", "Pmode", ",", "3", ")", ";", "if", "(", "aggregate_value_p", "(", "TREE_TYPE", "(", "TREE_TYPE", "(", "function", ")", ")", ",", "function", ")", ")", "this_rtx", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", "+", "1", ")", ";", "else", "this_rtx", "=", "gen_rtx_REG", "(", "Pmode", ",", "GP_ARG_FIRST", ")", ";", "if", "(", "delta", "!=", "0", ")", "{", "rtx", "offset", "=", "GEN_INT", "(", "delta", ")", ";", "if", "(", "!", "SMALL_OPERAND", "(", "delta", ")", ")", "{", "mips_emit_move", "(", "temp1", ",", "offset", ")", ";", "offset", "=", "temp1", ";", "}", "emit_insn", "(", "gen_add3_insn", "(", "this_rtx", ",", "this_rtx", ",", "offset", ")", ")", ";", "}", "if", "(", "vcall_offset", "!=", "0", ")", "{", "rtx", "addr", ";", "mips_emit_move", "(", "temp1", ",", "gen_rtx_MEM", "(", "Pmode", ",", "this_rtx", ")", ")", ";", "addr", "=", "mips_add_offset", "(", "temp2", ",", "temp1", ",", "vcall_offset", ")", ";", "mips_emit_move", "(", "temp1", ",", "gen_rtx_MEM", "(", "Pmode", ",", "addr", ")", ")", ";", "emit_insn", "(", "gen_add3_insn", "(", "this_rtx", ",", "this_rtx", ",", "temp1", ")", ")", ";", "}", "if", "(", "use_sibcall_p", ")", "{", "insn", "=", "emit_call_insn", "(", "gen_sibcall_internal", "(", "fnaddr", ",", "const0_rtx", ")", ")", ";", "SIBLING_CALL_P", "(", "insn", ")", "=", "1", ";", "}", "else", "{", "if", "(", "TARGET_USE_PIC_FN_ADDR_REG", "&&", "!", "TARGET_MIPS16", "&&", "!", "mips_dangerous_for_la25_p", "(", "fnaddr", ")", ")", "temp1", "=", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ";", "mips_load_call_address", "(", "MIPS_CALL_SIBCALL", ",", "temp1", ",", "fnaddr", ")", ";", "if", "(", "TARGET_USE_PIC_FN_ADDR_REG", "&&", "REGNO", "(", "temp1", ")", "!=", "PIC_FUNCTION_ADDR_REGNUM", ")", "mips_emit_move", "(", "gen_rtx_REG", "(", "Pmode", ",", "PIC_FUNCTION_ADDR_REGNUM", ")", ",", "temp1", ")", ";", "emit_jump_insn", "(", "gen_indirect_jump", "(", "temp1", ")", ")", ";", "}", "insn", "=", "get_insns", "(", ")", ";", "split_all_insns_noflow", "(", ")", ";", "mips16_lay_out_constants", "(", "true", ")", ";", "shorten_branches", "(", "insn", ")", ";", "assemble_start_function", "(", "thunk_fndecl", ",", "fnname", ")", ";", "final_start_function", "(", "insn", ",", "file", ",", "1", ")", ";", "final", "(", "insn", ",", "file", ",", "1", ")", ";", "final_end_function", "(", ")", ";", "assemble_end_function", "(", "thunk_fndecl", ",", "fnname", ")", ";", "reload_completed", "=", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_ASM_OUTPUT_MI_THUNK", ".", "Generate", "rtl", "rather", "than", "asm", "text", "in", "order", "to", "avoid", "duplicating", "too", "much", "logic", "from", "elsewhere", "."], "TS_V_token": ["mips", "1", "0", "15", "2", "3", "1", "0", "0", "1", "1", "1", "0"], "File": "mips", "Func": "mips_output_mi_thunk", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33124, "Length": 456} {"ground_truth": ["", "const", "char", "*", "mips_output_order_conditional_branch", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ",", "bool", "inverted_p", ")", "{", "const", "char", "*", "branch", "[", "2", "]", ";", "if", "(", "operands", "[", "3", "]", "!=", "const0_rtx", ")", "{", "if", "(", "REGNO", "(", "operands", "[", "2", "]", ")", "==", "REGNO", "(", "operands", "[", "3", "]", ")", ")", "{", "switch", "(", "GET_CODE", "(", "operands", "[", "1", "]", ")", ")", "{", "case", "LT", ":", "case", "LTU", ":", "inverted_p", "=", "!", "inverted_p", ";", "case", "GE", ":", "case", "GEU", ":", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b\"", ",", "\"%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "\"%*\\t\\t# branch never\"", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "}", "else", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%C1\"", ",", "\"%2,%3,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%N1\"", ",", "\"%2,%3,%0\"", ")", ";", "}", "}", "else", "{", "switch", "(", "GET_CODE", "(", "operands", "[", "1", "]", ")", ")", "{", "case", "LEU", ":", "inverted_p", "=", "!", "inverted_p", ";", "case", "GTU", ":", "if", "(", "TARGET_CB_MAYBE", ")", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"bnez\"", ",", "\"%2,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"beqz\"", ",", "\"%2,%0\"", ")", ";", "}", "else", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"bne\"", ",", "\"%2,%.,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"beq\"", ",", "\"%2,%.,%0\"", ")", ";", "}", "break", ";", "case", "LTU", ":", "inverted_p", "=", "!", "inverted_p", ";", "case", "GEU", ":", "if", "(", "TARGET_CB_MAYBE", ")", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b\"", ",", "\"%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "\"%*\\t\\t# branch never\"", ";", "}", "else", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"beq\"", ",", "\"%.,%.,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"bne\"", ",", "\"%.,%.,%0\"", ")", ";", "}", "break", ";", "default", ":", "if", "(", "TARGET_CB_MAYBE", ")", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%C1z\"", ",", "\"%2,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH_C", "(", "\"b%N1z\"", ",", "\"%2,%0\"", ")", ";", "}", "else", "{", "branch", "[", "!", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"b%C1z\"", ",", "\"%2,%0\"", ")", ";", "branch", "[", "inverted_p", "]", "=", "MIPS_BRANCH", "(", "\"b%N1z\"", ",", "\"%2,%0\"", ")", ";", "}", "break", ";", "}", "}", "return", "mips_output_conditional_branch", "(", "insn", ",", "operands", ",", "branch", "[", "1", "]", ",", "branch", "[", "0", "]", ")", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "code", "for", "INSN", ",", "which", "branches", "to", "OPERANDS", "[", "0", "]", "if", "some", "ordering", "condition", "is", "true", ".", "The", "condition", "is", "given", "by", "OPERANDS", "[", "1", "]", "if", "!", "INVERTED_P", ",", "otherwise", "it", "is", "the", "inverse", "of", "OPERANDS", "[", "1", "]", ".", "OPERANDS", "[", "2", "]", "is", "the", "comparison", "'s", "first", "operand", ";", "its", "second", "is", "always", "zero", "."], "TS_V_token": ["mips", "2", "3", "2", "3", "1", "\"b\"", "\"%0\"", "\"%*\\t\\t# branch never\"", "\"b%C1\"", "\"%2,%3,%0\"", "\"b%N1\"", "\"%2,%3,%0\"", "1", "\"bnez\"", "\"%2,%0\"", "\"beqz\"", "\"%2,%0\"", "\"bne\"", "\"%2,%.,%0\"", "\"beq\"", "\"%2,%.,%0\"", "\"b\"", "\"%0\"", "\"%*\\t\\t# branch never\"", "\"beq\"", "\"%.,%.,%0\"", "\"bne\"", "\"%.,%.,%0\"", "\"b%C1z\"", "\"%2,%0\"", "\"b%N1z\"", "\"%2,%0\"", "\"b%C1z\"", "\"%2,%0\"", "\"b%N1z\"", "\"%2,%0\"", "1", "0"], "File": "mips", "Func": "mips_output_order_conditional_branch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33125, "Length": 377} {"ground_truth": ["", "const", "char", "*", "mips_output_probe_stack_range", "(", "rtx", "reg1", ",", "rtx", "reg2", ")", "{", "static", "int", "labelno", "=", "0", ";", "char", "loop_lab", "[", "32", "]", ",", "tmp", "[", "64", "]", ";", "rtx", "xops", "[", "2", "]", ";", "ASM_GENERATE_INTERNAL_LABEL", "(", "loop_lab", ",", "\"LPSRL\"", ",", "labelno", "++", ")", ";", "ASM_OUTPUT_INTERNAL_LABEL", "(", "asm_out_file", ",", "loop_lab", ")", ";", "xops", "[", "0", "]", "=", "reg1", ";", "xops", "[", "1", "]", "=", "GEN_INT", "(", "-", "PROBE_INTERVAL", ")", ";", "if", "(", "TARGET_64BIT", "&&", "TARGET_LONG64", ")", "output_asm_insn", "(", "\"daddiu\\t%0,%0,%1\"", ",", "xops", ")", ";", "else", "output_asm_insn", "(", "\"addiu\\t%0,%0,%1\"", ",", "xops", ")", ";", "xops", "[", "1", "]", "=", "reg2", ";", "strcpy", "(", "tmp", ",", "\"%(%"], "natrual_language": ["Probe", "a", "range", "of", "stack", "addresses", "from", "REG1", "to", "REG2", "inclusive", ".", "These", "are", "absolute", "addresses", "."], "TS_V_token": ["mips", "0", "32", "64", "2", "\"LPSRL\"", "0", "1", "\"daddiu\\t%0,%0,%1\"", "\"addiu\\t%0,%0,%1\"", "1", "\"%(%", "const", "char", "*", "mips_output_sync", "(", "void", ")", "{", "mips_start_ll_sc_sync_block", "(", ")", ";", "output_asm_insn", "(", "\"sync\"", ",", "0", ")", ";", "mips_end_ll_sc_sync_block", "(", ")", ";", "return", "\"\"", ";", "}", ""], "natrual_language": ["Output", "and/or", "return", "the", "asm", "template", "for", "a", "sync", "instruction", "."], "TS_V_token": ["mips", "\"sync\"", "0", "\"\""], "File": "mips", "Func": "mips_output_sync", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33127, "Length": 27} {"ground_truth": ["", "const", "char", "*", "mips_output_sync_loop", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ")", "{", "mips_branch_likely", "=", "TARGET_FIX_R10000", ";", "mips_process_sync_loop", "(", "insn", ",", "operands", ")", ";", "mips_push_asm_switch", "(", "&", "mips_noreorder", ")", ";", "mips_push_asm_switch", "(", "&", "mips_nomacro", ")", ";", "mips_push_asm_switch", "(", "&", "mips_noat", ")", ";", "mips_start_ll_sc_sync_block", "(", ")", ";", "mips_multi_write", "(", ")", ";", "mips_end_ll_sc_sync_block", "(", ")", ";", "mips_pop_asm_switch", "(", "&", "mips_noat", ")", ";", "mips_pop_asm_switch", "(", "&", "mips_nomacro", ")", ";", "mips_pop_asm_switch", "(", "&", "mips_noreorder", ")", ";", "return", "\"\"", ";", "}", ""], "natrual_language": ["Output", "and/or", "return", "the", "asm", "template", "for", "sync", "loop", "INSN", ",", "which", "has", "the", "operands", "given", "by", "OPERANDS", "."], "TS_V_token": ["mips", "\"\""], "File": "mips", "Func": "mips_output_sync_loop", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33128, "Length": 77} {"ground_truth": ["", "const", "char", "*", "mips_output_tls_reloc_directive", "(", "rtx", "*", "addr", ")", "{", "enum", "mips_symbol_type", "type", ";", "type", "=", "mips_classify_symbolic_expression", "(", "*", "addr", ",", "SYMBOL_CONTEXT_LEA", ")", ";", "*", "addr", "=", "mips_strip_unspec_address", "(", "*", "addr", ")", ";", "switch", "(", "type", ")", "{", "case", "SYMBOL_DTPREL", ":", "return", "Pmode", "==", "SImode", "?", "\".dtprelword\\t%0\"", ":", "\".dtpreldword\\t%0\"", ";", "case", "SYMBOL_TPREL", ":", "return", "Pmode", "==", "SImode", "?", "\".tprelword\\t%0\"", ":", "\".tpreldword\\t%0\"", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "}", ""], "natrual_language": ["Return", "the", "pseudo-op", "for", "full", "SYMBOL_", "(", "D", ")", "TPREL", "address", "*", "ADDR", ".", "Update", "*", "ADDR", "with", "the", "operand", "that", "should", "be", "printed", "."], "TS_V_token": ["mips", "\".dtprelword\\t%0\"", "\".dtpreldword\\t%0\"", "\".tprelword\\t%0\"", "\".tpreldword\\t%0\""], "File": "mips", "Func": "mips_output_tls_reloc_directive", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33129, "Length": 70} {"ground_truth": ["", "bool", "mips_pad_reg_upward", "(", "machine_mode", "mode", ",", "tree", "type", ")", "{", "if", "(", "type", "!=", "0", "?", "FLOAT_TYPE_P", "(", "type", ")", ":", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", ")", "return", "!", "BYTES_BIG_ENDIAN", ";", "return", "mips_function_arg_padding", "(", "mode", ",", "type", ")", "==", "PAD_UPWARD", ";", "}", ""], "natrual_language": ["Likewise", "BLOCK_REG_PADDING", "(", "MODE", ",", "TYPE", ",", "...", ")", ".", "Return", "!", "BYTES_BIG_ENDIAN", "if", "the", "least", "significant", "byte", "of", "the", "register", "has", "useful", "data", ".", "Return", "the", "opposite", "if", "the", "most", "significant", "byte", "does", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_pad_reg_upward", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33130, "Length": 43} {"ground_truth": ["", "static", "bool", "mips_pass_by_reference", "(", "cumulative_args_t", ",", "const", "function_arg_info", "&", "arg", ")", "{", "if", "(", "mips_abi", "==", "ABI_EABI", ")", "{", "int", "size", ";", "if", "(", "arg", ".", "mode", "==", "DImode", "||", "arg", ".", "mode", "==", "DFmode", "||", "arg", ".", "mode", "==", "DQmode", "||", "arg", ".", "mode", "==", "UDQmode", "||", "arg", ".", "mode", "==", "DAmode", "||", "arg", ".", "mode", "==", "UDAmode", ")", "return", "0", ";", "size", "=", "arg", ".", "type_size_in_bytes", "(", ")", ";", "return", "size", "==", "-", "1", "||", "size", ">", "UNITS_PER_WORD", ";", "}", "else", "{", "return", "targetm", ".", "calls", ".", "must_pass_in_stack", "(", "arg", ")", ";", "}", "}", ""], "natrual_language": ["Return", "nonzero", "when", "an", "argument", "must", "be", "passed", "by", "reference", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_pass_by_reference", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33131, "Length": 96} {"ground_truth": ["", "rtx", "mips_pic_base_register", "(", "rtx", "temp", ")", "{", "if", "(", "!", "TARGET_MIPS16", ")", "return", "pic_offset_table_rtx", ";", "if", "(", "currently_expanding_to_rtl", ")", "return", "mips16_gp_pseudo_reg", "(", ")", ";", "if", "(", "can_create_pseudo_p", "(", ")", ")", "temp", "=", "gen_reg_rtx", "(", "Pmode", ")", ";", "if", "(", "TARGET_USE_GOT", ")", "mips_emit_move", "(", "temp", ",", "pic_offset_table_rtx", ")", ";", "else", "emit_insn", "(", "gen_load_const_gp", "(", "temp", ")", ")", ";", "return", "temp", ";", "}", ""], "natrual_language": ["Return", "a", "base", "register", "that", "holds", "pic_offset_table_rtx", ".", "TEMP", ",", "if", "nonnull", ",", "is", "a", "scratch", "Pmode", "base", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_pic_base_register", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33132, "Length": 61} {"ground_truth": ["", "static", "rtx", "mips_pic_call_symbol_from_set", "(", "df_ref", "def", ",", "rtx", "reg", ",", "bool", "recurse_p", ")", "{", "rtx_insn", "*", "def_insn", ";", "rtx", "set", ";", "if", "(", "DF_REF_IS_ARTIFICIAL", "(", "def", ")", ")", "return", "NULL_RTX", ";", "def_insn", "=", "DF_REF_INSN", "(", "def", ")", ";", "set", "=", "single_set", "(", "def_insn", ")", ";", "if", "(", "set", "&&", "rtx_equal_p", "(", "SET_DEST", "(", "set", ")", ",", "reg", ")", ")", "{", "rtx", "note", ",", "src", ",", "symbol", ";", "src", "=", "SET_SRC", "(", "set", ")", ";", "if", "(", "GET_CODE", "(", "src", ")", "==", "SYMBOL_REF", ")", "return", "src", ";", "symbol", "=", "mips_strip_unspec_call", "(", "src", ")", ";", "if", "(", "symbol", ")", "{", "gcc_assert", "(", "GET_CODE", "(", "symbol", ")", "==", "SYMBOL_REF", ")", ";", "return", "symbol", ";", "}", "note", "=", "find_reg_equal_equiv_note", "(", "def_insn", ")", ";", "if", "(", "note", "&&", "GET_CODE", "(", "XEXP", "(", "note", ",", "0", ")", ")", "==", "SYMBOL_REF", ")", "return", "XEXP", "(", "note", ",", "0", ")", ";", "if", "(", "recurse_p", "&&", "REG_P", "(", "src", ")", ")", "return", "mips_find_pic_call_symbol", "(", "def_insn", ",", "src", ",", "false", ")", ";", "}", "return", "NULL_RTX", ";", "}", ""], "natrual_language": ["REG", "is", "set", "in", "DEF", ".", "See", "if", "the", "definition", "is", "one", "of", "the", "ways", "we", "load", "a", "register", "with", "a", "symbol", "address", "for", "a", "mips_use_pic_fn_addr_reg_p", "call", ".", "If", "it", "is", ",", "return", "the", "symbol", "reference", "of", "the", "function", ",", "otherwise", "return", "NULL_RTX", ".", "If", "RECURSE_P", "is", "true", ",", "use", "mips_find_pic_call_symbol", "to", "interpret", "the", "values", "of", "source", "registers", ",", "otherwise", "treat", "such", "registers", "as", "having", "an", "unknown", "value", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_pic_call_symbol_from_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33133, "Length": 167} {"ground_truth": ["", "static", "void", "mips_pop_asm_switch_1", "(", "struct", "mips_asm_switch", "*", "asm_switch", ",", "const", "char", "*", "prefix", ",", "const", "char", "*", "suffix", ")", "{", "gcc_assert", "(", "asm_switch", "->", "nesting_level", ")", ";", "asm_switch", "->", "nesting_level", "--", ";", "if", "(", "asm_switch", "->", "nesting_level", "==", "0", ")", "fprintf", "(", "asm_out_file", ",", "\"%s.set\\t%s%s\"", ",", "prefix", ",", "asm_switch", "->", "name", ",", "suffix", ")", ";", "}", ""], "natrual_language": ["Likewise", ",", "but", "end", "a", "block", "."], "TS_V_token": ["mips", "0", "\"%s.set\\t%s%s\""], "File": "mips", "Func": "mips_pop_asm_switch_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33134, "Length": 56} {"ground_truth": ["", "static", "reg_class_t", "mips_preferred_reload_class", "(", "rtx", "x", ",", "reg_class_t", "rclass", ")", "{", "if", "(", "mips_dangerous_for_la25_p", "(", "x", ")", "&&", "reg_class_subset_p", "(", "LEA_REGS", ",", "rclass", ")", ")", "return", "LEA_REGS", ";", "if", "(", "reg_class_subset_p", "(", "FP_REGS", ",", "rclass", ")", "&&", "mips_mode_ok_for_mov_fmt_p", "(", "GET_MODE", "(", "x", ")", ")", ")", "return", "FP_REGS", ";", "if", "(", "reg_class_subset_p", "(", "GR_REGS", ",", "rclass", ")", ")", "rclass", "=", "GR_REGS", ";", "if", "(", "TARGET_MIPS16", "&&", "reg_class_subset_p", "(", "M16_REGS", ",", "rclass", ")", ")", "rclass", "=", "M16_REGS", ";", "return", "rclass", ";", "}", ""], "natrual_language": ["Implement", "PREFERRED_RELOAD_CLASS", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_preferred_reload_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33135, "Length": 80} {"ground_truth": ["", "static", "machine_mode", "mips_preferred_simd_mode", "(", "scalar_mode", "mode", ")", "{", "if", "(", "TARGET_PAIRED_SINGLE_FLOAT", "&&", "mode", "==", "SFmode", ")", "return", "V2SFmode", ";", "if", "(", "!", "ISA_HAS_MSA", ")", "return", "word_mode", ";", "switch", "(", "mode", ")", "{", "case", "E_QImode", ":", "return", "V16QImode", ";", "case", "E_HImode", ":", "return", "V8HImode", ";", "case", "E_SImode", ":", "return", "V4SImode", ";", "case", "E_DImode", ":", "return", "V2DImode", ";", "case", "E_SFmode", ":", "return", "V4SFmode", ";", "case", "E_DFmode", ":", "return", "V2DFmode", ";", "default", ":", "break", ";", "}", "return", "word_mode", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_PREFERRED_SIMD_MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_preferred_simd_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33136, "Length": 77} {"ground_truth": ["", "rtx", "mips_prefetch_cookie", "(", "rtx", "write", ",", "rtx", "locality", ")", "{", "if", "(", "INTVAL", "(", "locality", ")", "<=", "0", ")", "return", "GEN_INT", "(", "INTVAL", "(", "write", ")", "+", "4", ")", ";", "if", "(", "INTVAL", "(", "locality", ")", "<=", "2", ")", "return", "write", ";", "return", "GEN_INT", "(", "INTVAL", "(", "write", ")", "+", "6", ")", ";", "}", ""], "natrual_language": ["Given", "that", "we", "have", "an", "rtx", "of", "the", "form", "(", "prefetch", "...", "WRITE", "LOCALITY", ")", ",", "return", "the", "first", "operand", "of", "the", "associated", "``", "pref", "''", "or", "``", "prefx", "''", "insn", "."], "TS_V_token": ["mips", "0", "4", "2", "6"], "File": "mips", "Func": "mips_prefetch_cookie", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33137, "Length": 54} {"ground_truth": ["", "static", "void", "mips_prepare_builtin_arg", "(", "struct", "expand_operand", "*", "op", ",", "tree", "exp", ",", "unsigned", "int", "argno", ")", "{", "tree", "arg", ";", "rtx", "value", ";", "arg", "=", "CALL_EXPR_ARG", "(", "exp", ",", "argno", ")", ";", "value", "=", "expand_normal", "(", "arg", ")", ";", "create_input_operand", "(", "op", ",", "value", ",", "TYPE_MODE", "(", "TREE_TYPE", "(", "arg", ")", ")", ")", ";", "}", ""], "natrual_language": ["Take", "the", "head", "of", "argument", "list", "*", "ARGLIST", "and", "convert", "it", "into", "a", "form", "suitable", "for", "input", "operand", "OP", "of", "instruction", "ICODE", ".", "Return", "the", "value", "and", "point", "*", "ARGLIST", "at", "the", "next", "element", "of", "the", "list", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_prepare_builtin_arg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33138, "Length": 55} {"ground_truth": ["", "static", "void", "mips_prepare_pch_save", "(", "void", ")", "{", "mips_set_compression_mode", "(", "0", ")", ";", "mips16_globals", "=", "0", ";", "micromips_globals", "=", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_PREPARE_PCH_SAVE", "."], "TS_V_token": ["mips", "0", "0", "0"], "File": "mips", "Func": "mips_prepare_pch_save", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33139, "Length": 21} {"ground_truth": ["", "static", "void", "mips_print_float_branch_condition", "(", "FILE", "*", "file", ",", "enum", "rtx_code", "code", ",", "int", "letter", ")", "{", "switch", "(", "code", ")", "{", "case", "EQ", ":", "if", "(", "ISA_HAS_CCF", ")", "fputs", "(", "\"c1eqz\"", ",", "file", ")", ";", "else", "fputs", "(", "\"c1f\"", ",", "file", ")", ";", "break", ";", "case", "NE", ":", "if", "(", "ISA_HAS_CCF", ")", "fputs", "(", "\"c1nez\"", ",", "file", ")", ";", "else", "fputs", "(", "\"c1t\"", ",", "file", ")", ";", "break", ";", "default", ":", "output_operand_lossage", "(", "\"'%%%c' is not a valid operand prefix\"", ",", "letter", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Likewise", "floating-point", "branches", "."], "TS_V_token": ["mips", "\"c1eqz\"", "\"c1f\"", "\"c1nez\"", "\"c1t\"", "\"'%%%c' is not a valid operand prefix\""], "File": "mips", "Func": "mips_print_float_branch_condition", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33140, "Length": 82} {"ground_truth": ["", "static", "void", "mips_print_int_branch_condition", "(", "FILE", "*", "file", ",", "enum", "rtx_code", "code", ",", "int", "letter", ")", "{", "switch", "(", "code", ")", "{", "case", "EQ", ":", "case", "NE", ":", "case", "GT", ":", "case", "GE", ":", "case", "LT", ":", "case", "LE", ":", "case", "GTU", ":", "case", "GEU", ":", "case", "LTU", ":", "case", "LEU", ":", "fputs", "(", "GET_RTX_NAME", "(", "code", ")", ",", "file", ")", ";", "break", ";", "default", ":", "output_operand_lossage", "(", "\"'%%%c' is not a valid operand prefix\"", ",", "letter", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["PRINT_OPERAND", "prefix", "LETTER", "refers", "to", "the", "integer", "branch", "instruction", "associated", "with", "condition", "CODE", ".", "Print", "the", "condition", "part", "of", "the", "opcode", "to", "FILE", "."], "TS_V_token": ["mips", "\"'%%%c' is not a valid operand prefix\""], "File": "mips", "Func": "mips_print_int_branch_condition", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33141, "Length": 76} {"ground_truth": ["", "static", "void", "mips_print_operand_address", "(", "FILE", "*", "file", ",", "machine_mode", ",", "rtx", "x", ")", "{", "struct", "mips_address_info", "addr", ";", "if", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "word_mode", ",", "true", ")", ")", "switch", "(", "addr", ".", "type", ")", "{", "case", "ADDRESS_REG", ":", "mips_print_operand", "(", "file", ",", "addr", ".", "offset", ",", "0", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "REGNO", "(", "addr", ".", "reg", ")", "]", ")", ";", "return", ";", "case", "ADDRESS_LO_SUM", ":", "mips_print_operand_reloc", "(", "file", ",", "addr", ".", "offset", ",", "SYMBOL_CONTEXT_MEM", ",", "mips_lo_relocs", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "REGNO", "(", "addr", ".", "reg", ")", "]", ")", ";", "return", ";", "case", "ADDRESS_CONST_INT", ":", "output_addr_const", "(", "file", ",", "x", ")", ";", "fprintf", "(", "file", ",", "\"(%s)\"", ",", "reg_names", "[", "GP_REG_FIRST", "]", ")", ";", "return", ";", "case", "ADDRESS_SYMBOLIC", ":", "output_addr_const", "(", "file", ",", "mips_strip_unspec_address", "(", "x", ")", ")", ";", "return", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_PRINT_OPERAND_ADDRESS", "."], "TS_V_token": ["mips", "0", "\"(%s)\"", "\"(%s)\"", "\"(%s)\""], "File": "mips", "Func": "mips_print_operand_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33142, "Length": 152} {"ground_truth": ["", "static", "bool", "mips_print_operand_punct_valid_p", "(", "unsigned", "char", "code", ")", "{", "return", "mips_print_operand_punct", "[", "code", "]", ";", "}", ""], "natrual_language": ["Implement", "TARGET_PRINT_OPERAND_PUNCT_VALID_P", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_print_operand_punct_valid_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33143, "Length": 16} {"ground_truth": ["", "static", "void", "mips_print_operand_reloc", "(", "FILE", "*", "file", ",", "rtx", "op", ",", "enum", "mips_symbol_context", "context", ",", "const", "char", "*", "*", "relocs", ")", "{", "enum", "mips_symbol_type", "symbol_type", ";", "const", "char", "*", "p", ";", "symbol_type", "=", "mips_classify_symbolic_expression", "(", "op", ",", "context", ")", ";", "gcc_assert", "(", "relocs", "[", "symbol_type", "]", ")", ";", "fputs", "(", "relocs", "[", "symbol_type", "]", ",", "file", ")", ";", "output_addr_const", "(", "file", ",", "mips_strip_unspec_address", "(", "op", ")", ")", ";", "for", "(", "p", "=", "relocs", "[", "symbol_type", "]", ";", "*", "p", "!=", "0", ";", "p", "++", ")", "if", "(", "*", "p", "==", "'('", ")", "fputc", "(", "')'", ",", "file", ")", ";", "}", ""], "natrual_language": ["Print", "symbolic", "operand", "OP", ",", "which", "is", "part", "of", "a", "HIGH", "or", "LO_SUM", "in", "context", "CONTEXT", ".", "RELOCS", "is", "the", "array", "of", "relocations", "to", "use", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_print_operand_reloc", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33144, "Length": 100} {"ground_truth": ["", "static", "void", "mips_process_load_label", "(", "rtx", "target", ")", "{", "rtx", "base", ",", "gp", ",", "intop", ";", "HOST_WIDE_INT", "offset", ";", "mips_multi_start", "(", ")", ";", "switch", "(", "mips_abi", ")", "{", "case", "ABI_N32", ":", "mips_multi_add_insn", "(", "\"lw\\t%@,%%got_page(%0)(%+)\"", ",", "target", ",", "0", ")", ";", "mips_multi_add_insn", "(", "\"addiu\\t%@,%@,%%got_ofst(%0)\"", ",", "target", ",", "0", ")", ";", "break", ";", "case", "ABI_64", ":", "mips_multi_add_insn", "(", "\"ld\\t%@,%%got_page(%0)(%+)\"", ",", "target", ",", "0", ")", ";", "mips_multi_add_insn", "(", "\"daddiu\\t%@,%@,%%got_ofst(%0)\"", ",", "target", ",", "0", ")", ";", "break", ";", "default", ":", "gp", "=", "pic_offset_table_rtx", ";", "if", "(", "mips_cfun_has_cprestore_slot_p", "(", ")", ")", "{", "gp", "=", "gen_rtx_REG", "(", "Pmode", ",", "AT_REGNUM", ")", ";", "mips_get_cprestore_base_and_offset", "(", "&", "base", ",", "&", "offset", ",", "true", ")", ";", "if", "(", "!", "SMALL_OPERAND", "(", "offset", ")", ")", "{", "intop", "=", "GEN_INT", "(", "CONST_HIGH_PART", "(", "offset", ")", ")", ";", "mips_multi_add_insn", "(", "\"lui\\t%0,%1\"", ",", "gp", ",", "intop", ",", "0", ")", ";", "mips_multi_add_insn", "(", "\"addu\\t%0,%0,%1\"", ",", "gp", ",", "base", ",", "0", ")", ";", "base", "=", "gp", ";", "offset", "=", "CONST_LOW_PART", "(", "offset", ")", ";", "}", "intop", "=", "GEN_INT", "(", "offset", ")", ";", "if", "(", "ISA_HAS_LOAD_DELAY", ")", "mips_multi_add_insn", "(", "\"lw\\t%0,%1(%2)%#\"", ",", "gp", ",", "intop", ",", "base", ",", "0", ")", ";", "else", "mips_multi_add_insn", "(", "\"lw\\t%0,%1(%2)\"", ",", "gp", ",", "intop", ",", "base", ",", "0", ")", ";", "}", "if", "(", "ISA_HAS_LOAD_DELAY", ")", "mips_multi_add_insn", "(", "\"lw\\t%@,%%got(%0)(%1)%#\"", ",", "target", ",", "gp", ",", "0", ")", ";", "else", "mips_multi_add_insn", "(", "\"lw\\t%@,%%got(%0)(%1)\"", ",", "target", ",", "gp", ",", "0", ")", ";", "mips_multi_add_insn", "(", "\"addiu\\t%@,%@,%%lo(%0)\"", ",", "target", ",", "0", ")", ";", "break", ";", "}", "}", ""], "natrual_language": ["Build", "up", "a", "multi-insn", "sequence", "that", "loads", "label", "TARGET", "into", "$", "AT", "."], "TS_V_token": ["mips", "\"lw\\t%@,%%got_page(%0)(%+)\"", "0", "\"addiu\\t%@,%@,%%got_ofst(%0)\"", "0", "\"ld\\t%@,%%got_page(%0)(%+)\"", "0", "\"daddiu\\t%@,%@,%%got_ofst(%0)\"", "0", "\"lui\\t%0,%1\"", "0", "\"addu\\t%0,%0,%1\"", "0", "\"lw\\t%0,%1(%2)%#\"", "0", "\"lw\\t%0,%1(%2)\"", "0", "\"lw\\t%@,%%got(%0)(%1)%#\"", "0", "\"lw\\t%@,%%got(%0)(%1)\"", "0", "\"addiu\\t%@,%@,%%lo(%0)\"", "0"], "File": "mips", "Func": "mips_process_load_label", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33145, "Length": 238} {"ground_truth": ["", "static", "machine_mode", "mips_promote_function_mode", "(", "const_tree", "type", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ",", "int", "*", "punsignedp", "ATTRIBUTE_UNUSED", ",", "const_tree", "fntype", "ATTRIBUTE_UNUSED", ",", "int", "for_return", "ATTRIBUTE_UNUSED", ")", "{", "int", "unsignedp", ";", "if", "(", "type", "!=", "NULL_TREE", ")", "return", "promote_mode", "(", "type", ",", "mode", ",", "punsignedp", ")", ";", "unsignedp", "=", "*", "punsignedp", ";", "PROMOTE_MODE", "(", "mode", ",", "unsignedp", ",", "type", ")", ";", "*", "punsignedp", "=", "unsignedp", ";", "return", "mode", ";", "}", ""], "natrual_language": ["This", "function", "is", "equivalent", "to", "default_promote_function_mode_always_promote", "except", "that", "it", "returns", "a", "promoted", "mode", "even", "if", "type", "is", "NULL_TREE", ".", "This", "is", "needed", "by", "libcalls", "which", "have", "no", "type", "(", "only", "a", "mode", ")", "such", "as", "fixed", "conversion", "routines", "that", "take", "a", "signed", "or", "unsigned", "char/short", "argument", "and", "convert", "it", "to", "a", "fixed", "type", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_promote_function_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33146, "Length": 67} {"ground_truth": ["", "static", "void", "mips_promote_ready", "(", "rtx_insn", "*", "*", "ready", ",", "int", "lower", ",", "int", "higher", ")", "{", "rtx_insn", "*", "new_head", ";", "int", "i", ";", "new_head", "=", "ready", "[", "lower", "]", ";", "for", "(", "i", "=", "lower", ";", "i", "<", "higher", ";", "i", "++", ")", "ready", "[", "i", "]", "=", "ready", "[", "i", "+", "1", "]", ";", "ready", "[", "i", "]", "=", "new_head", ";", "}", ""], "natrual_language": ["Remove", "the", "instruction", "at", "index", "LOWER", "from", "ready", "queue", "READY", "and", "reinsert", "it", "in", "front", "of", "the", "instruction", "at", "index", "HIGHER", ".", "LOWER", "must", "be", "<", "=", "HIGHER", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_promote_ready", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33147, "Length": 63} {"ground_truth": ["", "void", "mips_push_asm_switch", "(", "struct", "mips_asm_switch", "*", "asm_switch", ")", "{", "mips_push_asm_switch_1", "(", "asm_switch", ",", "\"\\t\"", ",", "\"\\n\"", ")", ";", "}", ""], "natrual_language": ["Wrappers", "around", "mips_push_asm_switch_1", "and", "mips_pop_asm_switch_1", "that", "either", "print", "a", "complete", "line", "or", "print", "nothing", "."], "TS_V_token": ["mips", "\"\\t\"", "\"\\n\""], "File": "mips", "Func": "mips_push_asm_switch", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33148, "Length": 19} {"ground_truth": ["", "static", "void", "mips_push_asm_switch_1", "(", "struct", "mips_asm_switch", "*", "asm_switch", ",", "const", "char", "*", "prefix", ",", "const", "char", "*", "suffix", ")", "{", "if", "(", "asm_switch", "->", "nesting_level", "==", "0", ")", "fprintf", "(", "asm_out_file", ",", "\"%s.set\\tno%s%s\"", ",", "prefix", ",", "asm_switch", "->", "name", ",", "suffix", ")", ";", "asm_switch", "->", "nesting_level", "++", ";", "}", ""], "natrual_language": ["Start", "a", "new", "block", "with", "the", "given", "asm", "switch", "enabled", ".", "If", "we", "need", "to", "print", "a", "directive", ",", "emit", "PREFIX", "before", "it", "and", "SUFFIX", "after", "it", "."], "TS_V_token": ["mips", "0", "\"%s.set\\tno%s%s\""], "File": "mips", "Func": "mips_push_asm_switch_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33149, "Length": 49} {"ground_truth": ["", "static", "void", "mips_record_lo_sums", "(", "const_rtx", "x", ",", "mips_offset_table", "*", "htab", ")", "{", "subrtx_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX", "(", "iter", ",", "array", ",", "x", ",", "NONCONST", ")", "if", "(", "GET_CODE", "(", "*", "iter", ")", "==", "LO_SUM", ")", "mips_lo_sum_offset_lookup", "(", "htab", ",", "XEXP", "(", "*", "iter", ",", "1", ")", ",", "INSERT", ")", ";", "}", ""], "natrual_language": ["Search", "X", "for", "LO_SUMs", "and", "record", "them", "in", "HTAB", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_record_lo_sums", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33150, "Length": 53} {"ground_truth": ["", "static", "bool", "mips_refers_to_kernel_reg_p", "(", "const_rtx", "x", ")", "{", "subrtx_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX", "(", "iter", ",", "array", ",", "x", ",", "NONCONST", ")", "if", "(", "REG_P", "(", "*", "iter", ")", "&&", "KERNEL_REG_P", "(", "REGNO", "(", "*", "iter", ")", ")", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "contains", "a", "kernel", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_refers_to_kernel_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33151, "Length": 47} {"ground_truth": ["", "static", "int", "mips_register_move_cost", "(", "machine_mode", "mode", ",", "reg_class_t", "from", ",", "reg_class_t", "to", ")", "{", "reg_class_t", "dregs", ";", "int", "cost1", ",", "cost2", ";", "from", "=", "mips_canonicalize_move_class", "(", "from", ")", ";", "to", "=", "mips_canonicalize_move_class", "(", "to", ")", ";", "if", "(", "from", "==", "FP_REGS", ")", "{", "if", "(", "to", "==", "FP_REGS", "&&", "mips_mode_ok_for_mov_fmt_p", "(", "mode", ")", ")", "return", "4", ";", "}", "dregs", "=", "TARGET_MIPS16", "?", "M16_REGS", ":", "GENERAL_REGS", ";", "if", "(", "from", "==", "dregs", ")", "return", "mips_move_from_gpr_cost", "(", "to", ")", ";", "if", "(", "to", "==", "dregs", ")", "return", "mips_move_to_gpr_cost", "(", "from", ")", ";", "cost1", "=", "mips_move_to_gpr_cost", "(", "from", ")", ";", "if", "(", "cost1", "!=", "0", ")", "{", "cost2", "=", "mips_move_from_gpr_cost", "(", "to", ")", ";", "if", "(", "cost2", "!=", "0", ")", "return", "cost1", "+", "cost2", ";", "}", "return", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_REGISTER_MOVE_COST", ".", "Return", "0", "for", "classes", "that", "are", "the", "maximum", "of", "the", "move", "costs", "for", "subclasses", ";", "regclass", "will", "work", "out", "the", "maximum", "for", "us", "."], "TS_V_token": ["mips", "4", "0", "0", "0"], "File": "mips", "Func": "mips_register_move_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33152, "Length": 127} {"ground_truth": ["", "static", "int", "mips_register_priority", "(", "int", "hard_regno", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "TEST_HARD_REG_BIT", "(", "reg_class_contents", "[", "M16_REGS", "]", ",", "hard_regno", ")", ")", "return", "1", ";", "return", "0", ";", "}", ""], "natrual_language": ["Implement", "TARGET_REGISTER_PRIORITY", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips", "Func": "mips_register_priority", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33153, "Length": 29} {"ground_truth": ["", "int", "mips_regno_mode_ok_for_base_p", "(", "int", "regno", ",", "machine_mode", "mode", ",", "bool", "strict_p", ")", "{", "if", "(", "!", "HARD_REGISTER_NUM_P", "(", "regno", ")", ")", "{", "if", "(", "!", "strict_p", ")", "return", "true", ";", "regno", "=", "reg_renumber", "[", "regno", "]", ";", "}", "if", "(", "regno", "==", "ARG_POINTER_REGNUM", "||", "regno", "==", "FRAME_POINTER_REGNUM", ")", "return", "true", ";", "if", "(", "TARGET_MIPS16", "&&", "regno", "==", "STACK_POINTER_REGNUM", ")", "return", "GET_MODE_SIZE", "(", "mode", ")", "==", "4", "||", "GET_MODE_SIZE", "(", "mode", ")", "==", "8", ";", "return", "TARGET_MIPS16", "?", "M16_REG_P", "(", "regno", ")", ":", "GP_REG_P", "(", "regno", ")", ";", "}", ""], "natrual_language": ["This", "function", "is", "used", "to", "implement", "REG_MODE_OK_FOR_BASE_P", "."], "TS_V_token": ["mips", "4", "8"], "File": "mips", "Func": "mips_regno_mode_ok_for_base_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33154, "Length": 88} {"ground_truth": ["", "static", "void", "mips_reorg", "(", "void", ")", "{", "if", "(", "mips_cfg_in_reorg", "(", ")", ")", "compute_bb_for_insn", "(", ")", ";", "mips16_lay_out_constants", "(", "true", ")", ";", "if", "(", "mips_cfg_in_reorg", "(", ")", ")", "{", "mips_df_reorg", "(", ")", ";", "free_bb_for_insn", "(", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_MACHINE_DEPENDENT_REORG", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_reorg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33155, "Length": 39} {"ground_truth": ["", "void", "mips_restore_gp_from_cprestore_slot", "(", "rtx", "temp", ")", "{", "gcc_assert", "(", "TARGET_ABICALLS", "&&", "TARGET_OLDABI", "&&", "epilogue_completed", ")", ";", "if", "(", "!", "cfun", "->", "machine", "->", "must_restore_gp_when_clobbered_p", ")", "{", "emit_note", "(", "NOTE_INSN_DELETED", ")", ";", "return", ";", "}", "if", "(", "TARGET_MIPS16", ")", "{", "mips_emit_move", "(", "temp", ",", "mips_cprestore_slot", "(", "temp", ",", "true", ")", ")", ";", "mips_emit_move", "(", "pic_offset_table_rtx", ",", "temp", ")", ";", "}", "else", "mips_emit_move", "(", "pic_offset_table_rtx", ",", "mips_cprestore_slot", "(", "temp", ",", "true", ")", ")", ";", "if", "(", "!", "TARGET_EXPLICIT_RELOCS", ")", "emit_insn", "(", "gen_blockage", "(", ")", ")", ";", "}", ""], "natrual_language": ["Restore", "$", "gp", "from", "its", "save", "slot", ",", "using", "TEMP", "as", "a", "temporary", "base", "register", "if", "need", "be", ".", "This", "function", "is", "for", "o32", "and", "o64", "abicalls", "only", ".", "See", "mips_must_initialize_gp_p", "for", "details", "about", "how", "we", "manage", "the", "global", "pointer", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_restore_gp_from_cprestore_slot", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33156, "Length": 85} {"ground_truth": ["", "static", "void", "mips_restore_reg", "(", "rtx", "reg", ",", "rtx", "mem", ")", "{", "if", "(", "TARGET_MIPS16", "&&", "REGNO", "(", "reg", ")", "==", "RETURN_ADDR_REGNUM", ")", "reg", "=", "gen_rtx_REG", "(", "GET_MODE", "(", "reg", ")", ",", "GP_REG_FIRST", "+", "7", ")", ";", "else", "if", "(", "GET_MODE", "(", "reg", ")", "==", "DFmode", "&&", "(", "!", "TARGET_FLOAT64", "||", "mips_abi", "==", "ABI_32", ")", ")", "{", "mips_add_cfa_restore", "(", "mips_subword", "(", "reg", ",", "true", ")", ")", ";", "mips_add_cfa_restore", "(", "mips_subword", "(", "reg", ",", "false", ")", ")", ";", "}", "else", "mips_add_cfa_restore", "(", "reg", ")", ";", "mips_emit_save_slot_move", "(", "reg", ",", "mem", ",", "MIPS_EPILOGUE_TEMP", "(", "GET_MODE", "(", "reg", ")", ")", ")", ";", "if", "(", "REGNO", "(", "reg", ")", "==", "REGNO", "(", "mips_epilogue", ".", "cfa_reg", ")", ")", "mips_epilogue_set_cfa", "(", "stack_pointer_rtx", ",", "mips_epilogue", ".", "cfa_restore_sp_offset", ")", ";", "}", ""], "natrual_language": ["Emit", "instructions", "to", "restore", "register", "REG", "from", "slot", "MEM", "."], "TS_V_token": ["mips", "7"], "File": "mips", "Func": "mips_restore_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33157, "Length": 122} {"ground_truth": ["", "rtx", "mips_return_addr", "(", "int", "count", ",", "rtx", "frame", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "count", "!=", "0", ")", "return", "const0_rtx", ";", "return", "get_hard_reg_initial_val", "(", "Pmode", ",", "RETURN_ADDR_REGNUM", ")", ";", "}", ""], "natrual_language": ["Implement", "RETURN_ADDR_RTX", ".", "Note", ",", "we", "do", "not", "support", "moving", "back", "to", "a", "previous", "frame", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_return_addr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33158, "Length": 29} {"ground_truth": ["", "static", "rtx", "mips_return_fpr_pair", "(", "machine_mode", "mode", ",", "machine_mode", "mode1", ",", "HOST_WIDE_INT", "offset1", ",", "machine_mode", "mode2", ",", "HOST_WIDE_INT", "offset2", ")", "{", "int", "inc", ";", "inc", "=", "(", "TARGET_NEWABI", "||", "mips_abi", "==", "ABI_32", "?", "2", ":", "MAX_FPRS_PER_FMT", ")", ";", "return", "gen_rtx_PARALLEL", "(", "mode", ",", "gen_rtvec", "(", "2", ",", "gen_rtx_EXPR_LIST", "(", "VOIDmode", ",", "gen_rtx_REG", "(", "mode1", ",", "FP_RETURN", ")", ",", "GEN_INT", "(", "offset1", ")", ")", ",", "gen_rtx_EXPR_LIST", "(", "VOIDmode", ",", "gen_rtx_REG", "(", "mode2", ",", "FP_RETURN", "+", "inc", ")", ",", "GEN_INT", "(", "offset2", ")", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "a", "composite", "value", "in", "a", "pair", "of", "floating-point", "registers", ".", "MODE1", "and", "OFFSET1", "are", "the", "mode", "and", "byte", "offset", "for", "the", "first", "value", ",", "likewise", "MODE2", "and", "OFFSET2", "for", "the", "second", ".", "MODE", "is", "the", "mode", "of", "the", "complete", "value", ".", "For", "n32", "&", "n64", ",", "$", "f0", "always", "holds", "the", "first", "value", "and", "$", "f2", "the", "second", ".", "Otherwise", "the", "values", "are", "packed", "together", "as", "closely", "as", "possible", "."], "TS_V_token": ["mips", "2", "2"], "File": "mips", "Func": "mips_return_fpr_pair", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33159, "Length": 85} {"ground_truth": ["", "static", "rtx", "mips_return_fpr_single", "(", "machine_mode", "type_mode", ",", "machine_mode", "value_mode", ")", "{", "rtx", "x", ";", "x", "=", "gen_rtx_REG", "(", "value_mode", ",", "FP_RETURN", ")", ";", "if", "(", "type_mode", "!=", "value_mode", ")", "{", "x", "=", "gen_rtx_EXPR_LIST", "(", "VOIDmode", ",", "x", ",", "const0_rtx", ")", ";", "x", "=", "gen_rtx_PARALLEL", "(", "type_mode", ",", "gen_rtvec", "(", "1", ",", "x", ")", ")", ";", "}", "return", "x", ";", "}", ""], "natrual_language": ["Return", "the", "representation", "of", "an", "FPR", "return", "register", "when", "the", "value", "being", "returned", "in", "FP_RETURN", "has", "mode", "VALUE_MODE", "and", "the", "return", "type", "itself", "has", "mode", "TYPE_MODE", ".", "On", "NewABI", "targets", ",", "the", "two", "modes", "may", "be", "different", "for", "structures", "like", ":", "struct", "__attribute__", "(", "(", "packed", ")", ")", "foo", "{", "float", "f", ";", "}", "where", "we", "return", "the", "SFmode", "value", "of", "``", "f", "''", "in", "FP_RETURN", ",", "but", "where", "the", "structure", "itself", "has", "mode", "BLKmode", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_return_fpr_single", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33160, "Length": 60} {"ground_truth": ["", "static", "bool", "mips_return_in_memory", "(", "const_tree", "type", ",", "const_tree", "fndecl", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "TARGET_OLDABI", ")", "return", "(", "VECTOR_FLOAT_TYPE_P", "(", "type", ")", "||", "TYPE_MODE", "(", "type", ")", "==", "BLKmode", ")", ";", "return", "(", "!", "IN_RANGE", "(", "int_size_in_bytes", "(", "type", ")", ",", "0", ",", "2", "*", "UNITS_PER_WORD", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_RETURN_IN_MEMORY", ".", "Under", "the", "old", "(", "i.e.", ",", "32", "and", "O64", "ABIs", ")", "all", "BLKmode", "objects", "are", "returned", "in", "memory", ".", "Under", "the", "new", "(", "N32", "and", "64-bit", "MIPS", "ABIs", ")", "small", "structures", "are", "returned", "in", "a", "register", ".", "Objects", "with", "varying", "size", "must", "still", "be", "returned", "in", "memory", ",", "of", "course", "."], "TS_V_token": ["mips", "0", "2"], "File": "mips", "Func": "mips_return_in_memory", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33161, "Length": 50} {"ground_truth": ["", "static", "bool", "mips_return_in_msb", "(", "const_tree", "valtype", ")", "{", "if", "(", "!", "TARGET_NEWABI", "||", "!", "TARGET_BIG_ENDIAN", "||", "!", "AGGREGATE_TYPE_P", "(", "valtype", ")", ")", "return", "false", ";", "tree", "fields", "[", "2", "]", ";", "bool", "has_cxx_zero_width_bf", "=", "false", ";", "bool", "has_cxx17_empty_base", "=", "false", ";", "return", "(", "mips_fpr_return_fields", "(", "valtype", ",", "fields", ",", "&", "has_cxx_zero_width_bf", ",", "&", "has_cxx17_empty_base", ")", "==", "0", "||", "has_cxx_zero_width_bf", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_RETURN_IN_MSB", ".", "For", "n32", "&", "n64", ",", "we", "should", "return", "a", "value", "in", "the", "most", "significant", "part", "of", "$", "2/", "$", "3", "if", ":", "-", "the", "target", "is", "big-endian", ";", "-", "the", "value", "has", "a", "structure", "or", "union", "type", "(", "we", "generalize", "this", "to", "cover", "aggregates", "from", "other", "languages", "too", ")", ";", "and", "-", "the", "structure", "is", "not", "returned", "in", "floating-point", "registers", "."], "TS_V_token": ["mips", "2", "0"], "File": "mips", "Func": "mips_return_in_msb", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33162, "Length": 62} {"ground_truth": ["", "static", "bool", "mips_return_mode_in_fpr_p", "(", "machine_mode", "mode", ")", "{", "gcc_assert", "(", "TARGET_PAIRED_SINGLE_FLOAT", "||", "mode", "!=", "V2SFmode", ")", ";", "return", "(", "(", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_FLOAT", "||", "mode", "==", "V2SFmode", "||", "GET_MODE_CLASS", "(", "mode", ")", "==", "MODE_COMPLEX_FLOAT", ")", "&&", "GET_MODE_UNIT_SIZE", "(", "mode", ")", "<=", "UNITS_PER_HWFPVALUE", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "function", "return", "value", "MODE", "will", "get", "returned", "in", "a", "floating-point", "register", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_return_mode_in_fpr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33163, "Length": 48} {"ground_truth": ["", "static", "bool", "mips_reversed_fp_cond", "(", "enum", "rtx_code", "*", "code", ")", "{", "switch", "(", "*", "code", ")", "{", "case", "NE", ":", "case", "LTGT", ":", "case", "ORDERED", ":", "*", "code", "=", "reverse_condition_maybe_unordered", "(", "*", "code", ")", ";", "return", "true", ";", "default", ":", "return", "false", ";", "}", "}", ""], "natrual_language": ["Convert", "*", "CODE", "into", "a", "code", "that", "can", "be", "used", "in", "a", "floating-point", "scc", "instruction", "(", "C.cond.fmt", ")", ".", "Return", "true", "if", "the", "values", "of", "the", "condition", "code", "registers", "will", "be", "inverted", ",", "with", "0", "indicating", "that", "the", "condition", "holds", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_reversed_fp_cond", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33164, "Length": 44} {"ground_truth": ["", "rtx", "mips_rewrite_small_data", "(", "rtx", "pattern", ")", "{", "pattern", "=", "copy_insn", "(", "pattern", ")", ";", "mips_rewrite_small_data_1", "(", "&", "pattern", ",", "SYMBOL_CONTEXT_LEA", ")", ";", "return", "pattern", ";", "}", ""], "natrual_language": ["If", "possible", ",", "rewrite", "OP", "so", "that", "it", "refers", "to", "small", "data", "using", "explicit", "relocations", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_rewrite_small_data", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33165, "Length": 26} {"ground_truth": ["", "static", "void", "mips_rewrite_small_data_1", "(", "rtx", "*", "loc", ",", "enum", "mips_symbol_context", "context", ")", "{", "subrtx_ptr_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX_PTR", "(", "iter", ",", "array", ",", "loc", ",", "ALL", ")", "{", "rtx", "*", "loc", "=", "*", "iter", ";", "if", "(", "MEM_P", "(", "*", "loc", ")", ")", "{", "mips_rewrite_small_data_1", "(", "&", "XEXP", "(", "*", "loc", ",", "0", ")", ",", "SYMBOL_CONTEXT_MEM", ")", ";", "iter", ".", "skip_subrtxes", "(", ")", ";", "}", "else", "if", "(", "mips_rewrite_small_data_p", "(", "*", "loc", ",", "context", ")", ")", "{", "*", "loc", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "pic_offset_table_rtx", ",", "*", "loc", ")", ";", "iter", ".", "skip_subrtxes", "(", ")", ";", "}", "else", "if", "(", "GET_CODE", "(", "*", "loc", ")", "==", "LO_SUM", ")", "iter", ".", "skip_subrtxes", "(", ")", ";", "}", "}", ""], "natrual_language": ["A", "for_each_rtx", "callback", ",", "used", "by", "mips_rewrite_small_data", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_rewrite_small_data_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33166, "Length": 117} {"ground_truth": ["", "static", "bool", "mips_rewrite_small_data_p", "(", "rtx", "x", ",", "enum", "mips_symbol_context", "context", ")", "{", "enum", "mips_symbol_type", "symbol_type", ";", "return", "(", "mips_lo_relocs", "[", "SYMBOL_GP_RELATIVE", "]", "&&", "!", "mips_split_p", "[", "SYMBOL_GP_RELATIVE", "]", "&&", "mips_symbolic_constant_p", "(", "x", ",", "context", ",", "&", "symbol_type", ")", "&&", "symbol_type", "==", "SYMBOL_GP_RELATIVE", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "small", "data", "address", "that", "can", "be", "rewritten", "as", "a", "LO_SUM", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_rewrite_small_data_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33167, "Length": 45} {"ground_truth": ["", "static", "bool", "mips_rtx_constant_in_small_data_p", "(", "machine_mode", "mode", ")", "{", "return", "(", "!", "TARGET_EMBEDDED_DATA", "&&", "TARGET_LOCAL_SDATA", "&&", "GET_MODE_SIZE", "(", "mode", ")", "<=", "mips_small_data_threshold", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "rtx", "constants", "of", "mode", "MODE", "should", "be", "put", "into", "a", "small", "data", "section", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_rtx_constant_in_small_data_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33168, "Length": 24} {"ground_truth": ["", "void", "mips_save_gp_to_cprestore_slot", "(", "rtx", "mem", ",", "rtx", "offset", ",", "rtx", "gp", ",", "rtx", "temp", ")", "{", "if", "(", "TARGET_CPRESTORE_DIRECTIVE", ")", "{", "gcc_assert", "(", "gp", "==", "pic_offset_table_rtx", ")", ";", "emit_insn", "(", "PMODE_INSN", "(", "gen_cprestore", ",", "(", "mem", ",", "offset", ")", ")", ")", ";", "}", "else", "mips_emit_move", "(", "mips_cprestore_slot", "(", "temp", ",", "false", ")", ",", "gp", ")", ";", "}", ""], "natrual_language": ["Emit", "instructions", "to", "save", "global", "pointer", "value", "GP", "into", "cprestore", "slot", "MEM", ".", "OFFSET", "is", "the", "offset", "that", "MEM", "applies", "to", "the", "base", "register", ".", "MEM", "may", "not", "be", "a", "legitimate", "address", ".", "If", "it", "is", "n't", ",", "TEMP", "is", "a", "temporary", "register", "that", "can", "be", "used", ",", "otherwise", "it", "is", "a", "SCRATCH", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_save_gp_to_cprestore_slot", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33169, "Length": 57} {"ground_truth": ["", "static", "void", "mips_save_reg", "(", "rtx", "reg", ",", "rtx", "mem", ")", "{", "if", "(", "GET_MODE", "(", "reg", ")", "==", "DFmode", "&&", "(", "!", "TARGET_FLOAT64", "||", "mips_abi", "==", "ABI_32", ")", ")", "{", "rtx", "x1", ",", "x2", ";", "mips_emit_move_or_split", "(", "mem", ",", "reg", ",", "SPLIT_IF_NECESSARY", ")", ";", "x1", "=", "mips_frame_set", "(", "mips_subword", "(", "mem", ",", "false", ")", ",", "mips_subword", "(", "reg", ",", "false", ")", ")", ";", "x2", "=", "mips_frame_set", "(", "mips_subword", "(", "mem", ",", "true", ")", ",", "mips_subword", "(", "reg", ",", "true", ")", ")", ";", "mips_set_frame_expr", "(", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "gen_rtvec", "(", "2", ",", "x1", ",", "x2", ")", ")", ")", ";", "}", "else", "mips_emit_save_slot_move", "(", "mem", ",", "reg", ",", "MIPS_PROLOGUE_TEMP", "(", "GET_MODE", "(", "reg", ")", ")", ")", ";", "}", ""], "natrual_language": ["Save", "register", "REG", "to", "MEM", ".", "Make", "the", "instruction", "frame-related", "."], "TS_V_token": ["mips", "2"], "File": "mips", "Func": "mips_save_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33170, "Length": 117} {"ground_truth": ["", "static", "bool", "mips_save_reg_p", "(", "unsigned", "int", "regno", ")", "{", "if", "(", "mips_cfun_call_saved_reg_p", "(", "regno", ")", ")", "{", "if", "(", "mips_cfun_might_clobber_call_saved_reg_p", "(", "regno", ")", ")", "return", "true", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "MAX_FPRS_PER_FMT", "==", "2", "&&", "mips_cfun_might_clobber_call_saved_reg_p", "(", "regno", "+", "1", ")", ")", "return", "true", ";", "}", "if", "(", "regno", "==", "RETURN_ADDR_REGNUM", "&&", "crtl", "->", "calls_eh_return", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "the", "current", "function", "must", "save", "REGNO", "."], "TS_V_token": ["mips", "2", "1"], "File": "mips", "Func": "mips_save_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33171, "Length": 66} {"ground_truth": ["", "static", "void", "mips_save_restore_reg", "(", "machine_mode", "mode", ",", "int", "regno", ",", "HOST_WIDE_INT", "offset", ",", "mips_save_restore_fn", "fn", ")", "{", "rtx", "mem", ";", "mem", "=", "gen_frame_mem", "(", "mode", ",", "plus_constant", "(", "Pmode", ",", "stack_pointer_rtx", ",", "offset", ")", ")", ";", "fn", "(", "gen_rtx_REG", "(", "mode", ",", "regno", ")", ",", "mem", ")", ";", "}", ""], "natrual_language": ["Use", "FN", "to", "save", "or", "restore", "register", "REGNO", ".", "MODE", "is", "the", "register", "'s", "mode", "and", "OFFSET", "is", "the", "offset", "of", "its", "save", "slot", "from", "the", "current", "stack", "pointer", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_save_restore_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33172, "Length": 49} {"ground_truth": ["", "static", "bool", "mips_scalar_mode_supported_p", "(", "scalar_mode", "mode", ")", "{", "if", "(", "ALL_FIXED_POINT_MODE_P", "(", "mode", ")", "&&", "GET_MODE_PRECISION", "(", "mode", ")", "<=", "2", "*", "BITS_PER_WORD", ")", "return", "true", ";", "return", "default_scalar_mode_supported_p", "(", "mode", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCALAR_MODE_SUPPORTED_P", "."], "TS_V_token": ["mips", "2"], "File": "mips", "Func": "mips_scalar_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33173, "Length": 34} {"ground_truth": ["", "static", "int", "mips_sched_reassociation_width", "(", "unsigned", "int", "opc", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", ")", "{", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "2", ";", "return", "1", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SCHED_REASSOCIATION_WIDTH", "."], "TS_V_token": ["mips", "2", "1"], "File": "mips", "Func": "mips_sched_reassociation_width", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33174, "Length": 27} {"ground_truth": ["", "static", "bool", "mips_secondary_memory_needed", "(", "machine_mode", "mode", ",", "reg_class_t", "class1", ",", "reg_class_t", "class2", ")", "{", "if", "(", "lra_in_progress", "&&", "(", "class1", "==", "NO_REGS", "||", "class2", "==", "NO_REGS", ")", ")", "return", "false", ";", "if", "(", "(", "(", "class1", "==", "FP_REGS", ")", "!=", "(", "class2", "==", "FP_REGS", ")", ")", "&&", "(", "(", "TARGET_FLOATXX", "&&", "!", "ISA_HAS_MXHC1", ")", "||", "TARGET_O32_FP64A_ABI", ")", "&&", "GET_MODE_SIZE", "(", "mode", ")", ">=", "8", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Implement", "SECONDARY_MEMORY_NEEDED", "."], "TS_V_token": ["mips", "8"], "File": "mips", "Func": "mips_secondary_memory_needed", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33175, "Length": 72} {"ground_truth": ["", "enum", "reg_class", "mips_secondary_reload_class", "(", "enum", "reg_class", "rclass", ",", "machine_mode", "mode", ",", "rtx", "x", ",", "bool", ")", "{", "int", "regno", ";", "if", "(", "mips_dangerous_for_la25_p", "(", "x", ")", ")", "return", "reg_class_subset_p", "(", "rclass", ",", "LEA_REGS", ")", "?", "NO_REGS", ":", "LEA_REGS", ";", "regno", "=", "true_regnum", "(", "x", ")", ";", "if", "(", "TARGET_MIPS16", ")", "{", "if", "(", "!", "reg_class_subset_p", "(", "rclass", ",", "M16_REGS", ")", "&&", "!", "M16_REG_P", "(", "regno", ")", ")", "return", "M16_REGS", ";", "return", "NO_REGS", ";", "}", "if", "(", "reg_class_subset_p", "(", "rclass", ",", "ACC_REGS", ")", ")", "return", "GP_REG_P", "(", "regno", ")", "?", "NO_REGS", ":", "GR_REGS", ";", "if", "(", "ACC_REG_P", "(", "regno", ")", ")", "return", "reg_class_subset_p", "(", "rclass", ",", "GR_REGS", ")", "?", "NO_REGS", ":", "GR_REGS", ";", "if", "(", "reg_class_subset_p", "(", "rclass", ",", "FP_REGS", ")", ")", "{", "if", "(", "regno", "<", "0", "||", "(", "MEM_P", "(", "x", ")", "&&", "(", "GET_MODE_SIZE", "(", "mode", ")", "==", "4", "||", "GET_MODE_SIZE", "(", "mode", ")", "==", "8", ")", ")", ")", "return", "NO_REGS", ";", "if", "(", "MEM_P", "(", "x", ")", "&&", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "NO_REGS", ";", "if", "(", "GP_REG_P", "(", "regno", ")", "||", "x", "==", "CONST0_RTX", "(", "mode", ")", ")", "return", "NO_REGS", ";", "if", "(", "CONSTANT_P", "(", "x", ")", "&&", "!", "targetm", ".", "cannot_force_const_mem", "(", "mode", ",", "x", ")", ")", "return", "NO_REGS", ";", "if", "(", "FP_REG_P", "(", "regno", ")", "&&", "mips_mode_ok_for_mov_fmt_p", "(", "mode", ")", ")", "return", "NO_REGS", ";", "return", "GR_REGS", ";", "}", "if", "(", "FP_REG_P", "(", "regno", ")", ")", "return", "reg_class_subset_p", "(", "rclass", ",", "GR_REGS", ")", "?", "NO_REGS", ":", "GR_REGS", ";", "return", "NO_REGS", ";", "}", ""], "natrual_language": ["This", "function", "returns", "the", "register", "class", "required", "for", "a", "secondary", "register", "when", "copying", "between", "one", "of", "the", "registers", "in", "CLASS", ",", "and", "X", ",", "using", "MODE", ".", "If", "IN_P", "is", "nonzero", ",", "the", "copy", "is", "going", "from", "X", "to", "the", "register", ",", "otherwise", "the", "register", "is", "the", "source", ".", "A", "return", "value", "of", "NO_REGS", "means", "that", "no", "secondary", "register", "is", "required", "."], "TS_V_token": ["mips", "0", "4", "8"], "File": "mips", "Func": "mips_secondary_reload_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33176, "Length": 248} {"ground_truth": ["", "static", "section", "*", "mips_select_rtx_section", "(", "machine_mode", "mode", ",", "rtx", "x", ",", "unsigned", "HOST_WIDE_INT", "align", ")", "{", "if", "(", "mips_rtx_constant_in_small_data_p", "(", "mode", ")", ")", "return", "get_named_section", "(", "NULL", ",", "\".sdata\"", ",", "0", ")", ";", "return", "default_elf_select_rtx_section", "(", "mode", ",", "x", ",", "align", ")", ";", "}", ""], "natrual_language": ["Choose", "the", "section", "to", "use", "for", "the", "constant", "rtx", "expression", "X", "that", "has", "mode", "MODE", "."], "TS_V_token": ["mips", "\".sdata\"", "0"], "File": "mips", "Func": "mips_select_rtx_section", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33177, "Length": 44} {"ground_truth": ["", "static", "unsigned", "int", "mips_seq_time", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "seq", ")", "{", "mips_sim_reset", "(", "state", ")", ";", "for", "(", "rtx_insn", "*", "insn", "=", "seq", ";", "insn", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "{", "mips_sim_wait_insn", "(", "state", ",", "insn", ")", ";", "mips_sim_issue_insn", "(", "state", ",", "insn", ")", ";", "}", "return", "state", "->", "time", ";", "}", ""], "natrual_language": ["Use", "simulator", "state", "STATE", "to", "calculate", "the", "execution", "time", "of", "instruction", "sequence", "SEQ", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_seq_time", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33178, "Length": 59} {"ground_truth": ["", "static", "void", "mips_setup_incoming_varargs", "(", "cumulative_args_t", "cum", ",", "const", "function_arg_info", "&", "arg", ",", "int", "*", "pretend_size", "ATTRIBUTE_UNUSED", ",", "int", "no_rtl", ")", "{", "CUMULATIVE_ARGS", "local_cum", ";", "int", "gp_saved", ",", "fp_saved", ";", "local_cum", "=", "*", "get_cumulative_args", "(", "cum", ")", ";", "mips_function_arg_advance", "(", "pack_cumulative_args", "(", "&", "local_cum", ")", ",", "arg", ")", ";", "gp_saved", "=", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_gprs", ";", "fp_saved", "=", "(", "EABI_FLOAT_VARARGS_P", "?", "MAX_ARGS_IN_REGISTERS", "-", "local_cum", ".", "num_fprs", ":", "0", ")", ";", "if", "(", "!", "no_rtl", ")", "{", "if", "(", "gp_saved", ">", "0", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "-", "gp_saved", "*", "UNITS_PER_WORD", ")", ";", "mem", "=", "gen_frame_mem", "(", "BLKmode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "move_block_from_reg", "(", "local_cum", ".", "num_gprs", "+", "GP_ARG_FIRST", ",", "mem", ",", "gp_saved", ")", ";", "}", "if", "(", "fp_saved", ">", "0", ")", "{", "machine_mode", "mode", ";", "int", "off", ",", "i", ";", "off", "=", "ROUND_DOWN", "(", "-", "gp_saved", "*", "UNITS_PER_WORD", ",", "UNITS_PER_FPVALUE", ")", ";", "off", "-=", "fp_saved", "*", "UNITS_PER_FPREG", ";", "mode", "=", "TARGET_SINGLE_FLOAT", "?", "SFmode", ":", "DFmode", ";", "for", "(", "i", "=", "local_cum", ".", "num_fprs", ";", "i", "<", "MAX_ARGS_IN_REGISTERS", ";", "i", "+=", "MAX_FPRS_PER_FMT", ")", "{", "rtx", "ptr", ",", "mem", ";", "ptr", "=", "plus_constant", "(", "Pmode", ",", "virtual_incoming_args_rtx", ",", "off", ")", ";", "mem", "=", "gen_frame_mem", "(", "mode", ",", "ptr", ")", ";", "set_mem_alias_set", "(", "mem", ",", "get_varargs_alias_set", "(", ")", ")", ";", "mips_emit_move", "(", "mem", ",", "gen_rtx_REG", "(", "mode", ",", "FP_ARG_FIRST", "+", "i", ")", ")", ";", "off", "+=", "UNITS_PER_HWFPVALUE", ";", "}", "}", "}", "if", "(", "REG_PARM_STACK_SPACE", "(", "cfun", "->", "decl", ")", "==", "0", ")", "cfun", "->", "machine", "->", "varargs_size", "=", "(", "gp_saved", "*", "UNITS_PER_WORD", "+", "fp_saved", "*", "UNITS_PER_FPREG", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SETUP_INCOMING_VARARGS", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips", "Func": "mips_setup_incoming_varargs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33179, "Length": 281} {"ground_truth": ["", "static", "void", "mips_set_architecture", "(", "const", "struct", "mips_cpu_info", "*", "info", ")", "{", "if", "(", "info", "!=", "0", ")", "{", "mips_arch_info", "=", "info", ";", "mips_arch", "=", "info", "->", "cpu", ";", "mips_isa", "=", "info", "->", "isa", ";", "if", "(", "mips_isa", "<", "MIPS_ISA_MIPS32", ")", "mips_isa_rev", "=", "0", ";", "else", "mips_isa_rev", "=", "(", "mips_isa", "&", "31", ")", "+", "1", ";", "}", "}", ""], "natrual_language": ["Set", "up", "globals", "to", "generate", "code", "for", "the", "ISA", "or", "processor", "described", "by", "INFO", "."], "TS_V_token": ["mips", "0", "0", "31", "1"], "File": "mips", "Func": "mips_set_architecture", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33180, "Length": 57} {"ground_truth": ["", "static", "void", "mips_set_compression_mode", "(", "unsigned", "int", "compression_mode", ")", "{", "if", "(", "compression_mode", "==", "old_compression_mode", ")", "return", ";", "target_flags", "=", "mips_base_target_flags", ";", "flag_schedule_insns", "=", "mips_base_schedule_insns", ";", "flag_reorder_blocks_and_partition", "=", "mips_base_reorder_blocks_and_partition", ";", "flag_move_loop_invariants", "=", "mips_base_move_loop_invariants", ";", "str_align_loops", "=", "mips_base_align_loops", ";", "str_align_jumps", "=", "mips_base_align_jumps", ";", "str_align_functions", "=", "mips_base_align_functions", ";", "target_flags", "&=", "~", "(", "MASK_MIPS16", "|", "MASK_MICROMIPS", ")", ";", "target_flags", "|=", "compression_mode", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "target_flags", "|=", "MASK_MIPS16", ";", "target_flags", "&=", "~", "MASK_SYNCI", ";", "flag_schedule_insns", "=", "0", ";", "flag_reorder_blocks_and_partition", "=", "0", ";", "flag_move_loop_invariants", "=", "0", ";", "target_flags", "|=", "MASK_EXPLICIT_RELOCS", ";", "targetm", ".", "min_anchor_offset", "=", "0", ";", "targetm", ".", "max_anchor_offset", "=", "127", ";", "targetm", ".", "const_anchor", "=", "0", ";", "target_flags", "&=", "~", "MASK_RELAX_PIC_CALLS", ";", "target_flags", "&=", "~", "MASK_FIX_R4000", ";", "if", "(", "flag_pic", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"MIPS16 PIC for ABIs other than o32 and o64\"", ")", ";", "if", "(", "TARGET_XGOT", ")", "sorry", "(", "\"MIPS16 %<-mxgot%> code\"", ")", ";", "if", "(", "TARGET_HARD_FLOAT_ABI", "&&", "!", "TARGET_OLDABI", ")", "sorry", "(", "\"% MIPS16 code for ABIs other than o32 and o64\"", ")", ";", "if", "(", "TARGET_MSA", ")", "sorry", "(", "\"MSA MIPS16 code\"", ")", ";", "}", "else", "{", "if", "(", "TARGET_MICROMIPS", ")", "target_flags", "&=", "~", "MASK_BRANCHLIKELY", ";", "if", "(", "TARGET_64BIT", ")", "{", "if", "(", "flag_align_loops", "&&", "!", "str_align_loops", ")", "str_align_loops", "=", "\"8\"", ";", "if", "(", "flag_align_jumps", "&&", "!", "str_align_jumps", ")", "str_align_jumps", "=", "\"8\"", ";", "if", "(", "flag_align_functions", "&&", "!", "str_align_functions", ")", "str_align_functions", "=", "\"8\"", ";", "}", "targetm", ".", "min_anchor_offset", "=", "-", "32768", ";", "targetm", ".", "max_anchor_offset", "=", "32767", ";", "targetm", ".", "const_anchor", "=", "0x8000", ";", "}", "mips_init_relocs", "(", ")", ";", "if", "(", "compression_mode", "&", "MASK_MIPS16", ")", "{", "if", "(", "!", "mips16_globals", ")", "mips16_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "mips16_globals", ")", ";", "}", "else", "if", "(", "compression_mode", "&", "MASK_MICROMIPS", ")", "{", "if", "(", "!", "micromips_globals", ")", "micromips_globals", "=", "save_target_globals_default_opts", "(", ")", ";", "else", "restore_target_globals", "(", "micromips_globals", ")", ";", "}", "else", "restore_target_globals", "(", "&", "default_target_globals", ")", ";", "old_compression_mode", "=", "compression_mode", ";", "}", ""], "natrual_language": ["Set", "up", "the", "target-dependent", "global", "state", "for", "ISA", "mode", "COMPRESSION_MODE", ",", "which", "is", "either", "MASK_MIPS16", "or", "MASK_MICROMIPS", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "127", "0", "\"MIPS16 PIC for ABIs other than o32 and o64\"", "\"MIPS16 %<-mxgot%> code\"", "\"% MIPS16 code for ABIs other than o32 and o64\"", "\"MSA MIPS16 code\"", "\"8\"", "\"8\"", "\"8\"", "32768", "32767", "0x8000"], "File": "mips", "Func": "mips_set_compression_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33181, "Length": 298} {"ground_truth": ["", "static", "void", "mips_set_current_function", "(", "tree", "fndecl", ")", "{", "mips_set_compression_mode", "(", "mips_get_compress_mode", "(", "fndecl", ")", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SET_CURRENT_FUNCTION", ".", "Decide", "whether", "the", "current", "function", "should", "use", "the", "MIPS16", "or", "microMIPS", "ISA", "and", "switch", "modes", "accordingly", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_set_current_function", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33182, "Length": 17} {"ground_truth": ["", "static", "void", "mips_set_fast_mult_zero_zero_p", "(", "struct", "mips_sim", "*", "state", ")", "{", "if", "(", "TARGET_MIPS16", "||", "!", "ISA_HAS_HILO", ")", "mips_tuning_info", ".", "fast_mult_zero_zero_p", "=", "true", ";", "else", "{", "unsigned", "int", "true_time", "=", "mips_mult_zero_zero_cost", "(", "state", ",", "true", ")", ";", "unsigned", "int", "false_time", "=", "mips_mult_zero_zero_cost", "(", "state", ",", "false", ")", ";", "mips_tuning_info", ".", "fast_mult_zero_zero_p", "=", "(", "true_time", "<=", "false_time", ")", ";", "}", "}", ""], "natrual_language": ["Check", "the", "relative", "speeds", "of", "``", "MULT", "$", "0", ",", "$", "0", "''", "and", "``", "MTLO", "$", "0", ";", "MTHI", "$", "0", "''", "and", "set", "up", "mips_tuning_info.fast_mult_zero_zero_p", "accordingly", ".", "Prefer", "MULT", "--", "which", "is", "shorter", "--", "in", "the", "event", "of", "a", "tie", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_set_fast_mult_zero_zero_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33183, "Length": 59} {"ground_truth": ["", "static", "void", "mips_set_frame_expr", "(", "rtx", "frame_pattern", ")", "{", "rtx_insn", "*", "insn", ";", "insn", "=", "get_last_insn", "(", ")", ";", "RTX_FRAME_RELATED_P", "(", "insn", ")", "=", "1", ";", "REG_NOTES", "(", "insn", ")", "=", "alloc_EXPR_LIST", "(", "REG_FRAME_RELATED_EXPR", ",", "frame_pattern", ",", "REG_NOTES", "(", "insn", ")", ")", ";", "}", ""], "natrual_language": ["Make", "the", "last", "instruction", "frame", "related", "and", "note", "that", "it", "performs", "the", "operation", "described", "by", "FRAME_PATTERN", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_set_frame_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33184, "Length": 43} {"ground_truth": ["", "static", "int", "mips_set_reg_reg_cost", "(", "machine_mode", "mode", ")", "{", "switch", "(", "GET_MODE_CLASS", "(", "mode", ")", ")", "{", "case", "MODE_CC", ":", "return", "mips_set_reg_reg_piece_cost", "(", "mode", ",", "GET_MODE_SIZE", "(", "CCmode", ")", ")", ";", "case", "MODE_FLOAT", ":", "case", "MODE_COMPLEX_FLOAT", ":", "case", "MODE_VECTOR_FLOAT", ":", "if", "(", "TARGET_HARD_FLOAT", ")", "return", "mips_set_reg_reg_piece_cost", "(", "mode", ",", "UNITS_PER_HWFPVALUE", ")", ";", "default", ":", "return", "mips_set_reg_reg_piece_cost", "(", "mode", ",", "UNITS_PER_WORD", ")", ";", "}", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "moving", "between", "two", "registers", "of", "mode", "MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_set_reg_reg_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33185, "Length": 63} {"ground_truth": ["", "static", "int", "mips_set_reg_reg_piece_cost", "(", "machine_mode", "mode", ",", "unsigned", "int", "units", ")", "{", "return", "COSTS_N_INSNS", "(", "(", "GET_MODE_SIZE", "(", "mode", ")", "+", "units", "-", "1", ")", "/", "units", ")", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "moving", "between", "two", "registers", "of", "mode", "MODE", ",", "assuming", "that", "the", "move", "will", "be", "in", "pieces", "of", "at", "most", "UNITS", "bytes", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_set_reg_reg_piece_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33186, "Length": 30} {"ground_truth": ["", "void", "mips_set_return_address", "(", "rtx", "address", ",", "rtx", "scratch", ")", "{", "rtx", "slot_address", ";", "gcc_assert", "(", "BITSET_P", "(", "cfun", "->", "machine", "->", "frame", ".", "mask", ",", "RETURN_ADDR_REGNUM", ")", ")", ";", "slot_address", "=", "mips_add_offset", "(", "scratch", ",", "stack_pointer_rtx", ",", "cfun", "->", "machine", "->", "frame", ".", "gp_sp_offset", ")", ";", "mips_emit_move", "(", "gen_frame_mem", "(", "GET_MODE", "(", "address", ")", ",", "slot_address", ")", ",", "address", ")", ";", "}", ""], "natrual_language": ["Emit", "code", "to", "change", "the", "current", "function", "'s", "return", "address", "to", "ADDRESS", ".", "SCRATCH", "is", "available", "as", "a", "scratch", "register", ",", "if", "needed", ".", "ADDRESS", "and", "SCRATCH", "are", "both", "word-mode", "GPRs", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_set_return_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33187, "Length": 62} {"ground_truth": ["", "static", "void", "mips_set_tune", "(", "const", "struct", "mips_cpu_info", "*", "info", ")", "{", "if", "(", "info", "!=", "0", ")", "{", "mips_tune_info", "=", "info", ";", "mips_tune", "=", "info", "->", "cpu", ";", "}", "}", ""], "natrual_language": ["Likewise", "for", "tuning", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_set_tune", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33188, "Length": 30} {"ground_truth": ["", "static", "void", "mips_set_tuning_info", "(", "void", ")", "{", "if", "(", "mips_tuning_info", ".", "initialized_p", "&&", "mips_tuning_info", ".", "arch", "==", "mips_arch", "&&", "mips_tuning_info", ".", "tune", "==", "mips_tune", "&&", "mips_tuning_info", ".", "mips16_p", "==", "TARGET_MIPS16", ")", "return", ";", "mips_tuning_info", ".", "arch", "=", "mips_arch", ";", "mips_tuning_info", ".", "tune", "=", "mips_tune", ";", "mips_tuning_info", ".", "mips16_p", "=", "TARGET_MIPS16", ";", "mips_tuning_info", ".", "initialized_p", "=", "true", ";", "dfa_start", "(", ")", ";", "struct", "mips_sim", "state", ";", "mips_sim_init", "(", "&", "state", ",", "alloca", "(", "state_size", "(", ")", ")", ")", ";", "mips_set_fast_mult_zero_zero_p", "(", "&", "state", ")", ";", "dfa_finish", "(", ")", ";", "}", ""], "natrual_language": ["Set", "up", "costs", "based", "on", "the", "current", "architecture", "and", "tuning", "settings", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_set_tuning_info", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33189, "Length": 89} {"ground_truth": ["", "static", "unsigned", "HOST_WIDE_INT", "mips_shift_truncation_mask", "(", "machine_mode", "mode", ")", "{", "if", "(", "TARGET_LOONGSON_MMI", "&&", "VECTOR_MODE_P", "(", "mode", ")", ")", "return", "0", ";", "return", "GET_MODE_BITSIZE", "(", "mode", ")", "-", "1", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SHIFT_TRUNCATION_MASK", ".", "We", "want", "to", "keep", "the", "default", "behavior", "of", "TARGET_SHIFT_TRUNCATION_MASK", "for", "non-vector", "modes", "even", "when", "TARGET_LOONGSON_VECTORS", "is", "true", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_shift_truncation_mask", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33190, "Length": 30} {"ground_truth": ["", "bool", "mips_signed_immediate_p", "(", "unsigned", "HOST_WIDE_INT", "x", ",", "int", "bits", ",", "int", "shift", "=", "0", ")", "{", "x", "+=", "1", "<<", "(", "bits", "+", "shift", "-", "1", ")", ";", "return", "mips_unsigned_immediate_p", "(", "x", ",", "bits", ",", "shift", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "fits", "within", "a", "signed", "field", "of", "BITS", "bits", "that", "is", "shifted", "left", "SHIFT", "bits", "before", "being", "used", "."], "TS_V_token": ["mips", "0", "1", "1"], "File": "mips", "Func": "mips_signed_immediate_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33191, "Length": 39} {"ground_truth": ["", "static", "int", "mips_sign_extend_cost", "(", "machine_mode", "mode", ",", "rtx", "op", ")", "{", "if", "(", "MEM_P", "(", "op", ")", ")", "return", "0", ";", "if", "(", "TARGET_64BIT", "&&", "mode", "==", "DImode", "&&", "GET_MODE", "(", "op", ")", "==", "SImode", ")", "return", "0", ";", "if", "(", "ISA_HAS_SEB_SEH", "||", "GENERATE_MIPS16E", ")", "return", "COSTS_N_INSNS", "(", "1", ")", ";", "return", "COSTS_N_INSNS", "(", "TARGET_MIPS16", "?", "4", ":", "2", ")", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "sign-extending", "OP", "to", "mode", "MODE", ",", "not", "including", "the", "cost", "of", "OP", "itself", "."], "TS_V_token": ["mips", "0", "0", "1", "4", "2"], "File": "mips", "Func": "mips_sign_extend_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33192, "Length": 62} {"ground_truth": ["", "static", "void", "mips_sim_finish_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ")", "{", "if", "(", "JUMP_P", "(", "insn", ")", ")", "mips_sim_issue_nop", "(", "state", ")", ";", "switch", "(", "GET_CODE", "(", "SEQ_BEGIN", "(", "insn", ")", ")", ")", "{", "case", "CODE_LABEL", ":", "case", "CALL_INSN", ":", "mips_sim_reset", "(", "state", ")", ";", "break", ";", "case", "JUMP_INSN", ":", "if", "(", "INSN_ANNULLED_BRANCH_P", "(", "SEQ_BEGIN", "(", "insn", ")", ")", ")", "mips_sim_reset", "(", "state", ")", ";", "break", ";", "default", ":", "break", ";", "}", "}", ""], "natrual_language": ["Update", "simulation", "state", "STATE", "so", "that", "it", "'s", "ready", "to", "accept", "the", "instruction", "after", "INSN", ".", "INSN", "should", "be", "part", "of", "the", "main", "rtl", "chain", ",", "not", "a", "member", "of", "a", "SEQUENCE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_finish_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33193, "Length": 76} {"ground_truth": ["", "static", "void", "mips_sim_init", "(", "struct", "mips_sim", "*", "state", ",", "state_t", "dfa_state", ")", "{", "if", "(", "targetm", ".", "sched", ".", "init_dfa_pre_cycle_insn", ")", "targetm", ".", "sched", ".", "init_dfa_pre_cycle_insn", "(", ")", ";", "if", "(", "targetm", ".", "sched", ".", "init_dfa_post_cycle_insn", ")", "targetm", ".", "sched", ".", "init_dfa_post_cycle_insn", "(", ")", ";", "state", "->", "issue_rate", "=", "mips_issue_rate", "(", ")", ";", "state", "->", "dfa_state", "=", "dfa_state", ";", "mips_sim_reset", "(", "state", ")", ";", "}", ""], "natrual_language": ["Initialize", "STATE", "before", "its", "first", "use", ".", "DFA_STATE", "points", "to", "an", "allocated", "but", "uninitialized", "DFA", "state", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_init", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33194, "Length": 65} {"ground_truth": ["", "static", "void", "mips_sim_issue_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ")", "{", "curr_state", "=", "state", "->", "dfa_state", ";", "state_transition", "(", "curr_state", ",", "insn", ")", ";", "state", "->", "insns_left", "=", "targetm", ".", "sched", ".", "variable_issue", "(", "0", ",", "false", ",", "insn", ",", "state", "->", "insns_left", ")", ";", "mips_sim_insn", "=", "insn", ";", "note_stores", "(", "insn", ",", "mips_sim_record_set", ",", "state", ")", ";", "}", ""], "natrual_language": ["Issue", "instruction", "INSN", "in", "scheduler", "state", "STATE", ".", "Assume", "that", "INSN", "can", "issue", "immediately", "(", "i.e.", ",", "that", "mips_sim_wait_insn", "has", "already", "been", "called", ")", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_sim_issue_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33195, "Length": 62} {"ground_truth": ["", "static", "void", "mips_sim_issue_nop", "(", "struct", "mips_sim", "*", "state", ")", "{", "if", "(", "state", "->", "insns_left", "==", "0", ")", "mips_sim_next_cycle", "(", "state", ")", ";", "state", "->", "insns_left", "--", ";", "}", ""], "natrual_language": ["Simulate", "issuing", "a", "NOP", "in", "state", "STATE", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_sim_issue_nop", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33196, "Length": 29} {"ground_truth": ["", "static", "void", "mips_sim_next_cycle", "(", "struct", "mips_sim", "*", "state", ")", "{", "curr_state", "=", "state", "->", "dfa_state", ";", "state", "->", "time", "++", ";", "state", "->", "insns_left", "=", "state", "->", "issue_rate", ";", "advance_state", "(", "curr_state", ")", ";", "}", ""], "natrual_language": ["Advance", "STATE", "by", "one", "clock", "cycle", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_next_cycle", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33197, "Length": 35} {"ground_truth": ["", "static", "void", "mips_sim_record_set", "(", "rtx", "x", ",", "const_rtx", "pat", "ATTRIBUTE_UNUSED", ",", "void", "*", "data", ")", "{", "struct", "mips_sim", "*", "state", ";", "state", "=", "(", "struct", "mips_sim", "*", ")", "data", ";", "if", "(", "REG_P", "(", "x", ")", ")", "{", "unsigned", "int", "regno", ",", "end_regno", ";", "end_regno", "=", "END_REGNO", "(", "x", ")", ";", "for", "(", "regno", "=", "REGNO", "(", "x", ")", ";", "regno", "<", "end_regno", ";", "regno", "++", ")", "{", "state", "->", "last_set", "[", "regno", "]", ".", "insn", "=", "mips_sim_insn", ";", "state", "->", "last_set", "[", "regno", "]", ".", "time", "=", "state", "->", "time", ";", "}", "}", "}", ""], "natrual_language": ["mips_sim_insn", "has", "just", "set", "X.", "Update", "the", "LAST_SET", "array", "in", "simulation", "state", "DATA", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_record_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33198, "Length": 95} {"ground_truth": ["", "static", "void", "mips_sim_reset", "(", "struct", "mips_sim", "*", "state", ")", "{", "curr_state", "=", "state", "->", "dfa_state", ";", "state", "->", "time", "=", "0", ";", "state", "->", "insns_left", "=", "state", "->", "issue_rate", ";", "memset", "(", "&", "state", "->", "last_set", ",", "0", ",", "sizeof", "(", "state", "->", "last_set", ")", ")", ";", "state_reset", "(", "curr_state", ")", ";", "targetm", ".", "sched", ".", "init", "(", "0", ",", "false", ",", "0", ")", ";", "advance_state", "(", "curr_state", ")", ";", "}", ""], "natrual_language": ["Reset", "STATE", "to", "the", "initial", "simulation", "state", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips", "Func": "mips_sim_reset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33199, "Length": 71} {"ground_truth": ["", "static", "void", "mips_sim_wait_insn", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ")", "{", "mips_sim_wait_regs", "(", "state", ",", "insn", ")", ";", "mips_sim_wait_units", "(", "state", ",", "insn", ")", ";", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "INSN", "is", "ready", "to", "issue", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_wait_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33200, "Length": 29} {"ground_truth": ["", "static", "void", "mips_sim_wait_reg", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ",", "rtx", "reg", ")", "{", "unsigned", "int", "regno", ",", "end_regno", ";", "end_regno", "=", "END_REGNO", "(", "reg", ")", ";", "for", "(", "regno", "=", "REGNO", "(", "reg", ")", ";", "regno", "<", "end_regno", ";", "regno", "++", ")", "if", "(", "state", "->", "last_set", "[", "regno", "]", ".", "insn", "!=", "0", ")", "{", "unsigned", "int", "t", ";", "t", "=", "(", "state", "->", "last_set", "[", "regno", "]", ".", "time", "+", "insn_latency", "(", "state", "->", "last_set", "[", "regno", "]", ".", "insn", ",", "insn", ")", ")", ";", "while", "(", "state", "->", "time", "<", "t", ")", "mips_sim_next_cycle", "(", "state", ")", ";", "}", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "instruction", "INSN", "can", "read", "register", "REG", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_sim_wait_reg", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33201, "Length": 106} {"ground_truth": ["", "static", "void", "mips_sim_wait_regs", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ")", "{", "mips_sim_insn", "=", "insn", ";", "note_uses", "(", "&", "PATTERN", "(", "insn", ")", ",", "mips_sim_wait_regs_1", ",", "state", ")", ";", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "all", "of", "INSN", "'s", "register", "dependencies", "are", "satisfied", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_wait_regs", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33202, "Length": 32} {"ground_truth": ["", "static", "void", "mips_sim_wait_regs_1", "(", "rtx", "*", "x", ",", "void", "*", "data", ")", "{", "subrtx_var_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX_VAR", "(", "iter", ",", "array", ",", "*", "x", ",", "NONCONST", ")", "if", "(", "REG_P", "(", "*", "iter", ")", ")", "mips_sim_wait_reg", "(", "(", "struct", "mips_sim", "*", ")", "data", ",", "mips_sim_insn", ",", "*", "iter", ")", ";", "}", ""], "natrual_language": ["Call", "mips_sim_wait_regs_2", "(", "R", ",", "DATA", ")", "for", "each", "register", "R", "mentioned", "in", "*", "X", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sim_wait_regs_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33203, "Length": 53} {"ground_truth": ["", "static", "void", "mips_sim_wait_units", "(", "struct", "mips_sim", "*", "state", ",", "rtx_insn", "*", "insn", ")", "{", "state_t", "tmp_state", ";", "tmp_state", "=", "alloca", "(", "state_size", "(", ")", ")", ";", "while", "(", "state", "->", "insns_left", "==", "0", "||", "(", "memcpy", "(", "tmp_state", ",", "state", "->", "dfa_state", ",", "state_size", "(", ")", ")", ",", "state_transition", "(", "tmp_state", ",", "insn", ")", ">=", "0", ")", ")", "mips_sim_next_cycle", "(", "state", ")", ";", "}", ""], "natrual_language": ["Advance", "simulation", "state", "STATE", "until", "the", "units", "required", "by", "instruction", "INSN", "are", "available", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_sim_wait_units", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33204, "Length": 64} {"ground_truth": ["", "static", "int", "mips_small_data_pattern_1", "(", "rtx", "x", ",", "enum", "mips_symbol_context", "context", ")", "{", "subrtx_var_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX_VAR", "(", "iter", ",", "array", ",", "x", ",", "ALL", ")", "{", "rtx", "x", "=", "*", "iter", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "LO_SUM", "||", "GET_CODE", "(", "x", ")", "==", "ASM_OPERANDS", ")", "iter", ".", "skip_subrtxes", "(", ")", ";", "else", "if", "(", "MEM_P", "(", "x", ")", ")", "{", "if", "(", "mips_small_data_pattern_1", "(", "XEXP", "(", "x", ",", "0", ")", ",", "SYMBOL_CONTEXT_MEM", ")", ")", "return", "true", ";", "iter", ".", "skip_subrtxes", "(", ")", ";", "}", "else", "if", "(", "mips_rewrite_small_data_p", "(", "x", ",", "context", ")", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["A", "for_each_rtx", "callback", "for", "mips_small_data_pattern_p", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_small_data_pattern_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33205, "Length": 107} {"ground_truth": ["", "bool", "mips_small_data_pattern_p", "(", "rtx", "op", ")", "{", "return", "mips_small_data_pattern_1", "(", "op", ",", "SYMBOL_CONTEXT_LEA", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "OP", "refers", "to", "small", "data", "symbols", "directly", ",", "not", "through", "a", "LO_SUM", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_small_data_pattern_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33206, "Length": 16} {"ground_truth": ["", "static", "bool", "mips_small_register_classes_for_mode_p", "(", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ")", "{", "return", "TARGET_MIPS16", ";", "}", ""], "natrual_language": ["Implement", "target", "hook", "small_register_classes_for_mode_p", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_small_register_classes_for_mode_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33207, "Length": 13} {"ground_truth": ["", "static", "reg_class_t", "mips_spill_class", "(", "reg_class_t", "rclass", "ATTRIBUTE_UNUSED", ",", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ")", "{", "if", "(", "TARGET_MIPS16", ")", "return", "SPILL_REGS", ";", "return", "NO_REGS", ";", "}", ""], "natrual_language": ["Implement", "TARGET_SPILL_CLASS", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_spill_class", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33208, "Length": 24} {"ground_truth": ["", "void", "mips_split_128bit_move", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "int", "byte", ",", "index", ";", "rtx", "low_dest", ",", "low_src", ",", "d", ",", "s", ";", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", ")", "{", "gcc_assert", "(", "!", "MEM_P", "(", "src", ")", ")", ";", "rtx", "new_dest", "=", "dest", ";", "if", "(", "!", "TARGET_64BIT", ")", "{", "if", "(", "GET_MODE", "(", "dest", ")", "!=", "V4SImode", ")", "new_dest", "=", "simplify_gen_subreg", "(", "V4SImode", ",", "dest", ",", "GET_MODE", "(", "dest", ")", ",", "0", ")", ";", "}", "else", "{", "if", "(", "GET_MODE", "(", "dest", ")", "!=", "V2DImode", ")", "new_dest", "=", "simplify_gen_subreg", "(", "V2DImode", ",", "dest", ",", "GET_MODE", "(", "dest", ")", ",", "0", ")", ";", "}", "for", "(", "byte", "=", "0", ",", "index", "=", "0", ";", "byte", "<", "GET_MODE_SIZE", "(", "TImode", ")", ";", "byte", "+=", "UNITS_PER_WORD", ",", "index", "++", ")", "{", "s", "=", "mips_subword_at_byte", "(", "src", ",", "byte", ")", ";", "if", "(", "!", "TARGET_64BIT", ")", "emit_insn", "(", "gen_msa_insert_w", "(", "new_dest", ",", "s", ",", "new_dest", ",", "GEN_INT", "(", "1", "<<", "index", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_msa_insert_d", "(", "new_dest", ",", "s", ",", "new_dest", ",", "GEN_INT", "(", "1", "<<", "index", ")", ")", ")", ";", "}", "}", "else", "if", "(", "FP_REG_RTX_P", "(", "src", ")", ")", "{", "gcc_assert", "(", "!", "MEM_P", "(", "dest", ")", ")", ";", "rtx", "new_src", "=", "src", ";", "if", "(", "!", "TARGET_64BIT", ")", "{", "if", "(", "GET_MODE", "(", "src", ")", "!=", "V4SImode", ")", "new_src", "=", "simplify_gen_subreg", "(", "V4SImode", ",", "src", ",", "GET_MODE", "(", "src", ")", ",", "0", ")", ";", "}", "else", "{", "if", "(", "GET_MODE", "(", "src", ")", "!=", "V2DImode", ")", "new_src", "=", "simplify_gen_subreg", "(", "V2DImode", ",", "src", ",", "GET_MODE", "(", "src", ")", ",", "0", ")", ";", "}", "for", "(", "byte", "=", "0", ",", "index", "=", "0", ";", "byte", "<", "GET_MODE_SIZE", "(", "TImode", ")", ";", "byte", "+=", "UNITS_PER_WORD", ",", "index", "++", ")", "{", "d", "=", "mips_subword_at_byte", "(", "dest", ",", "byte", ")", ";", "if", "(", "!", "TARGET_64BIT", ")", "emit_insn", "(", "gen_msa_copy_s_w", "(", "d", ",", "new_src", ",", "GEN_INT", "(", "index", ")", ")", ")", ";", "else", "emit_insn", "(", "gen_msa_copy_s_d", "(", "d", ",", "new_src", ",", "GEN_INT", "(", "index", ")", ")", ")", ";", "}", "}", "else", "{", "low_dest", "=", "mips_subword_at_byte", "(", "dest", ",", "0", ")", ";", "low_src", "=", "mips_subword_at_byte", "(", "src", ",", "0", ")", ";", "gcc_assert", "(", "REG_P", "(", "low_dest", ")", "&&", "REG_P", "(", "low_src", ")", ")", ";", "if", "(", "REGNO", "(", "low_dest", ")", "<=", "REGNO", "(", "low_src", ")", ")", "{", "for", "(", "byte", "=", "0", ";", "byte", "<", "GET_MODE_SIZE", "(", "TImode", ")", ";", "byte", "+=", "UNITS_PER_WORD", ")", "{", "d", "=", "mips_subword_at_byte", "(", "dest", ",", "byte", ")", ";", "s", "=", "mips_subword_at_byte", "(", "src", ",", "byte", ")", ";", "mips_emit_move", "(", "d", ",", "s", ")", ";", "}", "}", "else", "{", "for", "(", "byte", "=", "GET_MODE_SIZE", "(", "TImode", ")", "-", "UNITS_PER_WORD", ";", "byte", ">=", "0", ";", "byte", "-=", "UNITS_PER_WORD", ")", "{", "d", "=", "mips_subword_at_byte", "(", "dest", ",", "byte", ")", ";", "s", "=", "mips_subword_at_byte", "(", "src", ",", "byte", ")", ";", "mips_emit_move", "(", "d", ",", "s", ")", ";", "}", "}", "}", "}", ""], "natrual_language": ["Split", "a", "128-bit", "move", "from", "SRC", "to", "DEST", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "1", "1", "0", "0", "0", "0", "0", "0", "0", "0"], "File": "mips", "Func": "mips_split_128bit_move", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33209, "Length": 483} {"ground_truth": ["", "bool", "mips_split_128bit_move_p", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "if", "(", "FP_REG_RTX_P", "(", "src", ")", "&&", "FP_REG_RTX_P", "(", "dest", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "&&", "MEM_P", "(", "src", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "src", ")", "&&", "MEM_P", "(", "dest", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "&&", "mips_const_vector_same_int_p", "(", "src", ",", "GET_MODE", "(", "src", ")", ",", "-", "512", ",", "511", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "&&", "src", "==", "CONST0_RTX", "(", "GET_MODE", "(", "src", ")", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "128-bit", "move", "from", "SRC", "to", "DEST", "should", "be", "split", "."], "TS_V_token": ["mips", "512", "511"], "File": "mips", "Func": "mips_split_128bit_move_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33210, "Length": 104} {"ground_truth": ["", "static", "bool", "mips_split_addresses_p", "(", "void", ")", "{", "return", "(", "TARGET_SPLIT_ADDRESSES", "&&", "optimize", "&&", "!", "TARGET_MIPS16", "&&", "!", "flag_pic", "&&", "!", "ABI_HAS_64BIT_SYMBOLS", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "-msplit-addresses", "is", "selected", "and", "should", "be", "honored", ".", "-msplit-addresses", "is", "a", "half-way", "house", "between", "explicit", "relocations", "and", "the", "traditional", "assembler", "macros", ".", "It", "can", "split", "absolute", "32-bit", "symbolic", "constants", "into", "a", "high/lo_sum", "pair", "but", "uses", "macros", "for", "other", "sorts", "of", "access", ".", "Like", "explicit", "relocation", "support", "for", "REL", "targets", ",", "it", "relies", "on", "GNU", "extensions", "in", "the", "assembler", "and", "the", "linker", ".", "Although", "this", "code", "should", "work", "for", "-O0", ",", "it", "has", "traditionally", "been", "treated", "as", "an", "optimization", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_split_addresses_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33211, "Length": 24} {"ground_truth": ["", "void", "mips_split_call", "(", "rtx", "insn", ",", "rtx", "call_pattern", ")", "{", "emit_call_insn", "(", "call_pattern", ")", ";", "if", "(", "!", "find_reg_note", "(", "insn", ",", "REG_NORETURN", ",", "0", ")", ")", "mips_restore_gp_from_cprestore_slot", "(", "gen_rtx_REG", "(", "Pmode", ",", "POST_CALL_TMP_REG", ")", ")", ";", "}", ""], "natrual_language": ["Split", "call", "instruction", "INSN", "into", "a", "$", "gp-clobbering", "call", "and", "(", "where", "necessary", ")", "an", "instruction", "to", "restore", "$", "gp", "from", "its", "save", "slot", ".", "CALL_PATTERN", "is", "the", "pattern", "of", "the", "new", "call", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_split_call", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33212, "Length": 38} {"ground_truth": ["", "int", "mips_split_const_insns", "(", "rtx", "x", ")", "{", "unsigned", "int", "low", ",", "high", ";", "low", "=", "mips_const_insns", "(", "mips_subword", "(", "x", ",", "false", ")", ")", ";", "high", "=", "mips_const_insns", "(", "mips_subword", "(", "x", ",", "true", ")", ")", ";", "gcc_assert", "(", "low", ">", "0", "&&", "high", ">", "0", ")", ";", "return", "low", "+", "high", ";", "}", ""], "natrual_language": ["X", "is", "a", "doubleword", "constant", "that", "can", "be", "handled", "by", "splitting", "it", "into", "two", "words", "and", "loading", "each", "word", "separately", ".", "Return", "the", "number", "of", "instructions", "required", "to", "do", "this", ",", "assuming", "that", "BASE_INSN_LENGTH", "is", "the", "length", "of", "one", "instruction", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_split_const_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33213, "Length": 54} {"ground_truth": ["", "void", "mips_split_move_insn", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "insn", ")", "{", "mips_split_move", "(", "dest", ",", "src", ",", "mips_insn_split_type", "(", "insn", ")", ",", "insn", ")", ";", "}", ""], "natrual_language": ["Split", "a", "move", "from", "SRC", "to", "DEST", "in", "INSN", ",", "given", "that", "mips_split_move_insn_p", "holds", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_split_move_insn", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33214, "Length": 28} {"ground_truth": ["", "bool", "mips_split_move_insn_p", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "insn", ")", "{", "return", "mips_split_move_p", "(", "dest", ",", "src", ",", "mips_insn_split_type", "(", "insn", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "move", "from", "SRC", "to", "DEST", "in", "INSN", "should", "be", "split", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_split_move_insn_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33215, "Length": 27} {"ground_truth": ["", "bool", "mips_split_move_p", "(", "rtx", "dest", ",", "rtx", "src", ",", "enum", "mips_split_type", "split_type", ")", "{", "if", "(", "mips_mult_move_p", "(", "dest", ",", "src", ",", "split_type", ")", ")", "return", "false", ";", "unsigned", "int", "size", "=", "GET_MODE_SIZE", "(", "GET_MODE", "(", "dest", ")", ")", ";", "if", "(", "size", "==", "8", "&&", "FP_REG_RTX_P", "(", "src", ")", "&&", "FP_REG_RTX_P", "(", "dest", ")", ")", "return", "false", ";", "if", "(", "size", "==", "8", "&&", "ISA_HAS_LDC1_SDC1", ")", "{", "if", "(", "FP_REG_RTX_P", "(", "dest", ")", "&&", "MEM_P", "(", "src", ")", ")", "return", "false", ";", "if", "(", "FP_REG_RTX_P", "(", "src", ")", "&&", "MEM_P", "(", "dest", ")", ")", "return", "false", ";", "}", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "GET_MODE", "(", "dest", ")", ")", ")", "return", "mips_split_128bit_move_p", "(", "dest", ",", "src", ")", ";", "return", "size", ">", "UNITS_PER_WORD", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "move", "from", "SRC", "to", "DEST", "should", "be", "split", "into", "two", ".", "SPLIT_TYPE", "describes", "the", "split", "condition", "."], "TS_V_token": ["mips", "8", "8"], "File": "mips", "Func": "mips_split_move_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33216, "Length": 123} {"ground_truth": ["", "void", "mips_split_msa_copy_d", "(", "rtx", "dest", ",", "rtx", "src", ",", "rtx", "index", ",", "rtx", "(", "*", "gen_fn", ")", "(", "rtx", ",", "rtx", ",", "rtx", ")", ")", "{", "gcc_assert", "(", "(", "GET_MODE", "(", "src", ")", "==", "V2DImode", "&&", "GET_MODE", "(", "dest", ")", "==", "DImode", ")", "||", "(", "GET_MODE", "(", "src", ")", "==", "V2DFmode", "&&", "GET_MODE", "(", "dest", ")", "==", "DFmode", ")", ")", ";", "rtx", "low", "=", "mips_subword", "(", "dest", ",", "false", ")", ";", "rtx", "high", "=", "mips_subword", "(", "dest", ",", "true", ")", ";", "rtx", "new_src", "=", "simplify_gen_subreg", "(", "V4SImode", ",", "src", ",", "GET_MODE", "(", "src", ")", ",", "0", ")", ";", "emit_insn", "(", "gen_fn", "(", "low", ",", "new_src", ",", "GEN_INT", "(", "INTVAL", "(", "index", ")", "*", "2", ")", ")", ")", ";", "emit_insn", "(", "gen_fn", "(", "high", ",", "new_src", ",", "GEN_INT", "(", "INTVAL", "(", "index", ")", "*", "2", "+", "1", ")", ")", ")", ";", "}", ""], "natrual_language": ["Split", "a", "COPY_S.D", "with", "operands", "DEST", ",", "SRC", "and", "INDEX", ".", "GEN", "is", "a", "function", "used", "to", "generate", "subregs", "."], "TS_V_token": ["mips", "0", "2", "2", "1"], "File": "mips", "Func": "mips_split_msa_copy_d", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33217, "Length": 141} {"ground_truth": ["", "void", "mips_split_msa_fill_d", "(", "rtx", "dest", ",", "rtx", "src", ")", "{", "gcc_assert", "(", "(", "GET_MODE", "(", "dest", ")", "==", "V2DImode", "&&", "(", "GET_MODE", "(", "src", ")", "==", "DImode", "||", "src", "==", "const0_rtx", ")", ")", "||", "(", "GET_MODE", "(", "dest", ")", "==", "V2DFmode", "&&", "GET_MODE", "(", "src", ")", "==", "DFmode", ")", ")", ";", "rtx", "low", ",", "high", ";", "if", "(", "src", "==", "const0_rtx", ")", "{", "low", "=", "src", ";", "high", "=", "src", ";", "}", "else", "{", "low", "=", "mips_subword", "(", "src", ",", "false", ")", ";", "high", "=", "mips_subword", "(", "src", ",", "true", ")", ";", "}", "rtx", "new_dest", "=", "simplify_gen_subreg", "(", "V4SImode", ",", "dest", ",", "GET_MODE", "(", "dest", ")", ",", "0", ")", ";", "emit_insn", "(", "gen_msa_fill_w", "(", "new_dest", ",", "low", ")", ")", ";", "emit_insn", "(", "gen_msa_insert_w", "(", "new_dest", ",", "high", ",", "new_dest", ",", "GEN_INT", "(", "1", "<<", "1", ")", ")", ")", ";", "emit_insn", "(", "gen_msa_insert_w", "(", "new_dest", ",", "high", ",", "new_dest", ",", "GEN_INT", "(", "1", "<<", "3", ")", ")", ")", ";", "}", ""], "natrual_language": ["Split", "FILL.D", "."], "TS_V_token": ["mips", "0", "1", "1", "1", "3"], "File": "mips", "Func": "mips_split_msa_fill_d", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33218, "Length": 159} {"ground_truth": ["", "void", "mips_split_msa_insert_d", "(", "rtx", "dest", ",", "rtx", "src1", ",", "rtx", "index", ",", "rtx", "src2", ")", "{", "int", "i", ";", "gcc_assert", "(", "GET_MODE", "(", "dest", ")", "==", "GET_MODE", "(", "src1", ")", ")", ";", "gcc_assert", "(", "(", "GET_MODE", "(", "dest", ")", "==", "V2DImode", "&&", "(", "GET_MODE", "(", "src2", ")", "==", "DImode", "||", "src2", "==", "const0_rtx", ")", ")", "||", "(", "GET_MODE", "(", "dest", ")", "==", "V2DFmode", "&&", "GET_MODE", "(", "src2", ")", "==", "DFmode", ")", ")", ";", "rtx", "low", "=", "mips_subword", "(", "src2", ",", "false", ")", ";", "rtx", "high", "=", "mips_subword", "(", "src2", ",", "true", ")", ";", "rtx", "new_dest", "=", "simplify_gen_subreg", "(", "V4SImode", ",", "dest", ",", "GET_MODE", "(", "dest", ")", ",", "0", ")", ";", "rtx", "new_src1", "=", "simplify_gen_subreg", "(", "V4SImode", ",", "src1", ",", "GET_MODE", "(", "src1", ")", ",", "0", ")", ";", "i", "=", "exact_log2", "(", "INTVAL", "(", "index", ")", ")", ";", "gcc_assert", "(", "i", "!=", "-", "1", ")", ";", "emit_insn", "(", "gen_msa_insert_w", "(", "new_dest", ",", "low", ",", "new_src1", ",", "GEN_INT", "(", "1", "<<", "(", "i", "*", "2", ")", ")", ")", ")", ";", "emit_insn", "(", "gen_msa_insert_w", "(", "new_dest", ",", "high", ",", "new_dest", ",", "GEN_INT", "(", "1", "<<", "(", "i", "*", "2", "+", "1", ")", ")", ")", ")", ";", "}", ""], "natrual_language": ["Split", "a", "INSERT.D", "with", "operand", "DEST", ",", "SRC1.INDEX", "and", "SRC2", "."], "TS_V_token": ["mips", "0", "0", "1", "1", "2", "1", "2", "1"], "File": "mips", "Func": "mips_split_msa_insert_d", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33219, "Length": 194} {"ground_truth": ["", "static", "void", "mips_split_plus", "(", "rtx", "x", ",", "rtx", "*", "base_ptr", ",", "HOST_WIDE_INT", "*", "offset_ptr", ")", "{", "if", "(", "GET_CODE", "(", "x", ")", "==", "PLUS", "&&", "CONST_INT_P", "(", "XEXP", "(", "x", ",", "1", ")", ")", ")", "{", "*", "base_ptr", "=", "XEXP", "(", "x", ",", "0", ")", ";", "*", "offset_ptr", "=", "INTVAL", "(", "XEXP", "(", "x", ",", "1", ")", ")", ";", "}", "else", "{", "*", "base_ptr", "=", "x", ";", "*", "offset_ptr", "=", "0", ";", "}", "}", ""], "natrual_language": ["If", "X", "is", "a", "PLUS", "of", "a", "CONST_INT", ",", "return", "the", "two", "terms", "in", "*", "BASE_PTR", "and", "*", "OFFSET_PTR", ".", "Return", "X", "in", "*", "BASE_PTR", "and", "0", "in", "*", "OFFSET_PTR", "otherwise", "."], "TS_V_token": ["mips", "1", "0", "1", "0"], "File": "mips", "Func": "mips_split_plus", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33220, "Length": 74} {"ground_truth": ["", "bool", "mips_split_symbol", "(", "rtx", "temp", ",", "rtx", "addr", ",", "machine_mode", "mode", ",", "rtx", "*", "low_out", ")", "{", "enum", "mips_symbol_context", "context", ";", "enum", "mips_symbol_type", "symbol_type", ";", "rtx", "high", ";", "context", "=", "(", "mode", "==", "MAX_MACHINE_MODE", "?", "SYMBOL_CONTEXT_LEA", ":", "SYMBOL_CONTEXT_MEM", ")", ";", "if", "(", "GET_CODE", "(", "addr", ")", "==", "HIGH", "&&", "context", "==", "SYMBOL_CONTEXT_LEA", ")", "{", "addr", "=", "XEXP", "(", "addr", ",", "0", ")", ";", "if", "(", "mips_symbolic_constant_p", "(", "addr", ",", "context", ",", "&", "symbol_type", ")", "&&", "mips_symbol_insns", "(", "symbol_type", ",", "mode", ")", ">", "0", "&&", "mips_split_hi_p", "[", "symbol_type", "]", ")", "{", "if", "(", "low_out", ")", "switch", "(", "symbol_type", ")", "{", "case", "SYMBOL_GOT_PAGE_OFST", ":", "*", "low_out", "=", "mips_got_load", "(", "temp", ",", "addr", ",", "SYMBOL_GOTOFF_PAGE", ")", ";", "break", ";", "default", ":", "gcc_unreachable", "(", ")", ";", "}", "return", "true", ";", "}", "}", "else", "{", "if", "(", "mips_symbolic_constant_p", "(", "addr", ",", "context", ",", "&", "symbol_type", ")", "&&", "mips_symbol_insns", "(", "symbol_type", ",", "mode", ")", ">", "0", "&&", "mips_split_p", "[", "symbol_type", "]", ")", "{", "if", "(", "low_out", ")", "switch", "(", "symbol_type", ")", "{", "case", "SYMBOL_GOT_DISP", ":", "*", "low_out", "=", "mips_got_load", "(", "temp", ",", "addr", ",", "SYMBOL_GOTOFF_DISP", ")", ";", "break", ";", "case", "SYMBOL_GP_RELATIVE", ":", "high", "=", "mips_pic_base_register", "(", "temp", ")", ";", "*", "low_out", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "high", ",", "addr", ")", ";", "break", ";", "default", ":", "high", "=", "gen_rtx_HIGH", "(", "Pmode", ",", "copy_rtx", "(", "addr", ")", ")", ";", "high", "=", "mips_force_temporary", "(", "temp", ",", "high", ")", ";", "*", "low_out", "=", "gen_rtx_LO_SUM", "(", "Pmode", ",", "high", ",", "addr", ")", ";", "break", ";", "}", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "a", "LO_SUM", "expression", "for", "ADDR", ".", "TEMP", "is", "as", "for", "mips_force_temporary", "and", "is", "used", "to", "load", "the", "high", "part", "into", "a", "register", "."], "TS_V_token": ["mips", "0", "0", "0"], "File": "mips", "Func": "mips_split_symbol", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33221, "Length": 254} {"ground_truth": ["", "bool", "mips_stack_address_p", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "struct", "mips_address_info", "addr", ";", "return", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", "&&", "addr", ".", "type", "==", "ADDRESS_REG", "&&", "addr", ".", "reg", "==", "stack_pointer_rtx", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "legitimate", "$", "sp-based", "address", "for", "mode", "MDOE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_stack_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33222, "Length": 42} {"ground_truth": ["", "static", "HOST_WIDE_INT", "mips_starting_frame_offset", "(", "void", ")", "{", "if", "(", "FRAME_GROWS_DOWNWARD", ")", "return", "0", ";", "return", "crtl", "->", "outgoing_args_size", "+", "MIPS_GP_SAVE_AREA_SIZE", ";", "}", ""], "natrual_language": ["Implement", "TARGET_STARTING_FRAME_OFFSET", ".", "See", "mips_compute_frame_info", "for", "details", "about", "the", "frame", "layout", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_starting_frame_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33223, "Length": 22} {"ground_truth": ["", "static", "void", "mips_start_function_definition", "(", "const", "char", "*", "name", ",", "bool", "mips16_p", ")", "{", "if", "(", "mips16_p", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tmips16\\n\"", ")", ";", "else", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tnomips16\\n\"", ")", ";", "if", "(", "TARGET_MICROMIPS", ")", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tmicromips\\n\"", ")", ";", "else", "fprintf", "(", "asm_out_file", ",", "\"\\t.set\\tnomicromips\\n\"", ")", ";", "if", "(", "!", "flag_inhibit_size_directive", ")", "{", "fputs", "(", "\"\\t.ent\\t\"", ",", "asm_out_file", ")", ";", "assemble_name", "(", "asm_out_file", ",", "name", ")", ";", "fputs", "(", "\"\\n\"", ",", "asm_out_file", ")", ";", "}", "ASM_OUTPUT_TYPE_DIRECTIVE", "(", "asm_out_file", ",", "name", ",", "\"function\"", ")", ";", "assemble_name", "(", "asm_out_file", ",", "name", ")", ";", "fputs", "(", "\":\\n\"", ",", "asm_out_file", ")", ";", "}", ""], "natrual_language": ["Start", "a", "definition", "of", "function", "NAME", ".", "MIPS16_P", "indicates", "whether", "the", "function", "contains", "MIPS16", "code", "."], "TS_V_token": ["mips", "\"\\t.set\\tmips16\\n\"", "\"\\t.set\\tnomips16\\n\"", "\"\\t.set\\tmicromips\\n\"", "\"\\t.set\\tnomicromips\\n\"", "\"\\t.ent\\t\"", "\"\\n\"", "\"function\"", "\":\\n\""], "File": "mips", "Func": "mips_start_function_definition", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33224, "Length": 103} {"ground_truth": ["", "static", "void", "mips_start_ll_sc_sync_block", "(", "void", ")", "{", "if", "(", "!", "ISA_HAS_LL_SC", ")", "{", "output_asm_insn", "(", "\".set\\tpush\"", ",", "0", ")", ";", "if", "(", "TARGET_64BIT", ")", "output_asm_insn", "(", "\".set\\tmips3\"", ",", "0", ")", ";", "else", "output_asm_insn", "(", "\".set\\tmips2\"", ",", "0", ")", ";", "}", "}", ""], "natrual_language": ["Start", "a", "block", "of", "code", "that", "needs", "access", "to", "the", "LL", ",", "SC", "and", "SYNC", "instructions", "."], "TS_V_token": ["mips", "\".set\\tpush\"", "0", "\".set\\tmips3\"", "0", "\".set\\tmips2\"", "0"], "File": "mips", "Func": "mips_start_ll_sc_sync_block", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33225, "Length": 41} {"ground_truth": ["", "static", "void", "mips_start_unique_function", "(", "const", "char", "*", "name", ")", "{", "tree", "decl", ";", "decl", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "FUNCTION_DECL", ",", "get_identifier", "(", "name", ")", ",", "build_function_type_list", "(", "void_type_node", ",", "NULL_TREE", ")", ")", ";", "DECL_RESULT", "(", "decl", ")", "=", "build_decl", "(", "BUILTINS_LOCATION", ",", "RESULT_DECL", ",", "NULL_TREE", ",", "void_type_node", ")", ";", "TREE_PUBLIC", "(", "decl", ")", "=", "1", ";", "TREE_STATIC", "(", "decl", ")", "=", "1", ";", "cgraph_node", "::", "create", "(", "decl", ")", "->", "set_comdat_group", "(", "DECL_ASSEMBLER_NAME", "(", "decl", ")", ")", ";", "targetm", ".", "asm_out", ".", "unique_section", "(", "decl", ",", "0", ")", ";", "switch_to_section", "(", "get_named_section", "(", "decl", ",", "NULL", ",", "0", ")", ")", ";", "targetm", ".", "asm_out", ".", "globalize_label", "(", "asm_out_file", ",", "name", ")", ";", "fputs", "(", "\"\\t.hidden\\t\"", ",", "asm_out_file", ")", ";", "assemble_name", "(", "asm_out_file", ",", "name", ")", ";", "putc", "(", "'\\n'", ",", "asm_out_file", ")", ";", "}", ""], "natrual_language": ["Declare", "a", "unique", ",", "locally-binding", "function", "called", "NAME", ",", "then", "start", "its", "definition", "."], "TS_V_token": ["mips", "1", "1", "0", "0", "\"\\t.hidden\\t\""], "File": "mips", "Func": "mips_start_unique_function", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33226, "Length": 135} {"ground_truth": ["", "static", "tree", "mips_std_gimplify_va_arg_expr", "(", "tree", "valist", ",", "tree", "type", ",", "gimple_seq", "*", "pre_p", ",", "gimple_seq", "*", "post_p", ")", "{", "tree", "addr", ",", "t", ",", "type_size", ",", "rounded_size", ",", "valist_tmp", ";", "unsigned", "HOST_WIDE_INT", "align", ",", "boundary", ";", "bool", "indirect", ";", "indirect", "=", "pass_va_arg_by_reference", "(", "type", ")", ";", "if", "(", "indirect", ")", "type", "=", "build_pointer_type", "(", "type", ")", ";", "align", "=", "PARM_BOUNDARY", "/", "BITS_PER_UNIT", ";", "boundary", "=", "targetm", ".", "calls", ".", "function_arg_boundary", "(", "TYPE_MODE", "(", "type", ")", ",", "type", ")", ";", "if", "(", "boundary", ">", "MAX_SUPPORTED_STACK_ALIGNMENT", ")", "boundary", "=", "MAX_SUPPORTED_STACK_ALIGNMENT", ";", "boundary", "/=", "BITS_PER_UNIT", ";", "valist_tmp", "=", "get_initialized_tmp_var", "(", "valist", ",", "pre_p", ",", "NULL", ")", ";", "if", "(", "boundary", ">", "align", ")", "{", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "fold_build_pointer_plus_hwi", "(", "valist_tmp", ",", "boundary", "-", "1", ")", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "fold_build2", "(", "BIT_AND_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist_tmp", ",", "build_int_cst", "(", "TREE_TYPE", "(", "valist", ")", ",", "-", "boundary", ")", ")", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "}", "else", "boundary", "=", "align", ";", "boundary", "*=", "BITS_PER_UNIT", ";", "if", "(", "boundary", "<", "TYPE_ALIGN", "(", "type", ")", ")", "{", "type", "=", "build_variant_type_copy", "(", "type", ")", ";", "SET_TYPE_ALIGN", "(", "type", ",", "boundary", ")", ";", "}", "type_size", "=", "size_in_bytes", "(", "type", ")", ";", "rounded_size", "=", "round_up", "(", "type_size", ",", "align", ")", ";", "gimplify_expr", "(", "&", "rounded_size", ",", "pre_p", ",", "post_p", ",", "is_gimple_val", ",", "fb_rvalue", ")", ";", "addr", "=", "valist_tmp", ";", "if", "(", "PAD_VARARGS_DOWN", "&&", "!", "integer_zerop", "(", "rounded_size", ")", ")", "{", "t", "=", "fold_build2_loc", "(", "input_location", ",", "GT_EXPR", ",", "sizetype", ",", "rounded_size", ",", "size_int", "(", "align", ")", ")", ";", "t", "=", "fold_build3", "(", "COND_EXPR", ",", "sizetype", ",", "t", ",", "size_zero_node", ",", "size_binop", "(", "MINUS_EXPR", ",", "rounded_size", ",", "type_size", ")", ")", ";", "addr", "=", "fold_build_pointer_plus", "(", "addr", ",", "t", ")", ";", "}", "t", "=", "fold_build_pointer_plus", "(", "valist_tmp", ",", "rounded_size", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "valist", ")", ",", "valist", ",", "t", ")", ";", "gimplify_and_add", "(", "t", ",", "pre_p", ")", ";", "addr", "=", "fold_convert", "(", "build_pointer_type", "(", "type", ")", ",", "addr", ")", ";", "if", "(", "indirect", ")", "addr", "=", "build_va_arg_indirect_ref", "(", "addr", ")", ";", "return", "build_va_arg_indirect_ref", "(", "addr", ")", ";", "}", ""], "natrual_language": ["Like", "std_gimplify_va_arg_expr", ",", "but", "apply", "alignment", "to", "zero-sized", "types", "as", "well", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_std_gimplify_va_arg_expr", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33227, "Length": 377} {"ground_truth": ["", "bool", "mips_store_by_pieces_p", "(", "unsigned", "HOST_WIDE_INT", "size", ",", "unsigned", "int", "align", ")", "{", "if", "(", "align", "<=", "BITS_PER_UNIT", ")", "return", "size", "<", "4", ";", "return", "size", "<", "8", ";", "}", ""], "natrual_language": ["Implement", "a", "handler", "for", "STORE_BY_PIECES", "operations", "for", "TARGET_USE_MOVE_BY_PIECES_INFRASTRUCTURE_P", "."], "TS_V_token": ["mips", "4", "8"], "File": "mips", "Func": "mips_store_by_pieces_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33228, "Length": 29} {"ground_truth": ["", "bool", "mips_store_data_bypass_p", "(", "rtx_insn", "*", "out_insn", ",", "rtx_insn", "*", "in_insn", ")", "{", "if", "(", "GET_CODE", "(", "PATTERN", "(", "in_insn", ")", ")", "==", "UNSPEC_VOLATILE", ")", "return", "false", ";", "return", "store_data_bypass_p", "(", "out_insn", ",", "in_insn", ")", ";", "}", ""], "natrual_language": ["True", "if", "the", "dependency", "between", "OUT_INSN", "and", "IN_INSN", "is", "on", "the", "store", "data", "rather", "than", "the", "address", ".", "We", "need", "this", "because", "the", "cprestore", "pattern", "is", "type", "``", "store", "''", ",", "but", "is", "defined", "using", "an", "UNSPEC_VOLATILE", ",", "which", "causes", "the", "default", "routine", "to", "abort", ".", "We", "just", "return", "false", "for", "that", "case", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_store_data_bypass_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33229, "Length": 36} {"ground_truth": ["", "static", "bool", "mips_strict_argument_naming", "(", "cumulative_args_t", "ca", "ATTRIBUTE_UNUSED", ")", "{", "return", "!", "TARGET_OLDABI", ";", "}", ""], "natrual_language": ["Implement", "TARGET_STRICT_ARGUMENT_NAMING", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_strict_argument_naming", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33230, "Length": 14} {"ground_truth": ["", "rtx", "mips_strip_unspec_address", "(", "rtx", "op", ")", "{", "rtx", "base", ",", "offset", ";", "split_const", "(", "op", ",", "&", "base", ",", "&", "offset", ")", ";", "if", "(", "UNSPEC_ADDRESS_P", "(", "base", ")", ")", "op", "=", "plus_constant", "(", "Pmode", ",", "UNSPEC_ADDRESS", "(", "base", ")", ",", "INTVAL", "(", "offset", ")", ")", ";", "return", "op", ";", "}", ""], "natrual_language": ["If", "OP", "is", "an", "UNSPEC", "address", ",", "return", "the", "address", "to", "which", "it", "refers", ",", "otherwise", "return", "OP", "itself", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_strip_unspec_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33231, "Length": 51} {"ground_truth": ["", "static", "rtx", "mips_strip_unspec_call", "(", "rtx", "src", ")", "{", "if", "(", "GET_CODE", "(", "src", ")", "==", "UNSPEC", "&&", "XINT", "(", "src", ",", "1", ")", "==", "UNSPEC_LOAD_CALL", ")", "return", "mips_strip_unspec_address", "(", "XVECEXP", "(", "src", ",", "0", ",", "1", ")", ")", ";", "return", "NULL_RTX", ";", "}", ""], "natrual_language": ["If", "SRC", "is", "the", "RHS", "of", "a", "load_call", "<", "mode", ">", "insn", ",", "return", "the", "underlying", "symbol", "reference", ".", "Return", "NULL_RTX", "otherwise", "."], "TS_V_token": ["mips", "1", "0", "1"], "File": "mips", "Func": "mips_strip_unspec_call", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33232, "Length": 43} {"ground_truth": ["", "rtx", "mips_subword", "(", "rtx", "op", ",", "bool", "high_p", ")", "{", "unsigned", "int", "byte", ",", "offset", ";", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "op", ")", ";", "if", "(", "mode", "==", "VOIDmode", ")", "mode", "=", "TARGET_64BIT", "?", "TImode", ":", "DImode", ";", "if", "(", "TARGET_BIG_ENDIAN", "?", "!", "high_p", ":", "high_p", ")", "byte", "=", "UNITS_PER_WORD", ";", "else", "byte", "=", "0", ";", "if", "(", "FP_REG_RTX_P", "(", "op", ")", ")", "{", "offset", "=", "(", "UNITS_PER_WORD", "<", "UNITS_PER_HWFPVALUE", "?", "high_p", ":", "byte", "!=", "0", ")", ";", "return", "gen_rtx_REG", "(", "word_mode", ",", "REGNO", "(", "op", ")", "+", "offset", ")", ";", "}", "if", "(", "MEM_P", "(", "op", ")", ")", "return", "mips_rewrite_small_data", "(", "adjust_address", "(", "op", ",", "word_mode", ",", "byte", ")", ")", ";", "return", "simplify_gen_subreg", "(", "word_mode", ",", "op", ",", "mode", ",", "byte", ")", ";", "}", ""], "natrual_language": ["Return", "one", "word", "of", "double-word", "value", "OP", ",", "taking", "into", "account", "the", "fixed", "endianness", "of", "certain", "registers", ".", "HIGH_P", "is", "true", "to", "select", "the", "high", "part", ",", "false", "to", "select", "the", "low", "part", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "mips_subword", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33233, "Length": 127} {"ground_truth": ["", "rtx", "mips_subword_at_byte", "(", "rtx", "op", ",", "unsigned", "int", "byte", ")", "{", "machine_mode", "mode", ";", "mode", "=", "GET_MODE", "(", "op", ")", ";", "if", "(", "mode", "==", "VOIDmode", ")", "mode", "=", "TImode", ";", "gcc_assert", "(", "!", "FP_REG_RTX_P", "(", "op", ")", ")", ";", "if", "(", "MEM_P", "(", "op", ")", ")", "return", "mips_rewrite_small_data", "(", "adjust_address", "(", "op", ",", "word_mode", ",", "byte", ")", ")", ";", "return", "simplify_gen_subreg", "(", "word_mode", ",", "op", ",", "mode", ",", "byte", ")", ";", "}", ""], "natrual_language": ["Return", "one", "word", "of", "128-bit", "value", "OP", ",", "taking", "into", "account", "the", "fixed", "endianness", "of", "certain", "registers", ".", "BYTE", "selects", "from", "the", "byte", "address", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_subword_at_byte", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33234, "Length": 73} {"ground_truth": ["", "static", "void", "mips_swap_registers", "(", "unsigned", "int", "i", ")", "{", "int", "tmpi", ";", "const", "char", "*", "tmps", ";", "SWAP_INT", "(", "fixed_regs", "[", "i", "]", ",", "fixed_regs", "[", "i", "+", "1", "]", ")", ";", "SWAP_INT", "(", "call_used_regs", "[", "i", "]", ",", "call_used_regs", "[", "i", "+", "1", "]", ")", ";", "SWAP_STRING", "(", "reg_names", "[", "i", "]", ",", "reg_names", "[", "i", "+", "1", "]", ")", ";", "}", ""], "natrual_language": ["Swap", "the", "register", "information", "for", "registers", "I", "and", "I", "+", "1", ",", "which", "currently", "have", "the", "wrong", "endianness", ".", "Note", "that", "the", "registers", "'", "fixedness", "and", "call-clobberedness", "might", "have", "been", "set", "on", "the", "command", "line", "."], "TS_V_token": ["mips", "1", "1", "1"], "File": "mips", "Func": "mips_swap_registers", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33235, "Length": 63} {"ground_truth": ["", "bool", "mips_symbolic_constant_p", "(", "rtx", "x", ",", "enum", "mips_symbol_context", "context", ",", "enum", "mips_symbol_type", "*", "symbol_type", ")", "{", "rtx", "offset", ";", "split_const", "(", "x", ",", "&", "x", ",", "&", "offset", ")", ";", "if", "(", "UNSPEC_ADDRESS_P", "(", "x", ")", ")", "{", "*", "symbol_type", "=", "UNSPEC_ADDRESS_TYPE", "(", "x", ")", ";", "x", "=", "UNSPEC_ADDRESS", "(", "x", ")", ";", "}", "else", "if", "(", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", "||", "GET_CODE", "(", "x", ")", "==", "LABEL_REF", ")", "{", "*", "symbol_type", "=", "mips_classify_symbol", "(", "x", ",", "context", ")", ";", "if", "(", "*", "symbol_type", "==", "SYMBOL_TLS", ")", "return", "false", ";", "}", "else", "return", "false", ";", "if", "(", "offset", "==", "const0_rtx", ")", "return", "true", ";", "switch", "(", "*", "symbol_type", ")", "{", "case", "SYMBOL_ABSOLUTE", ":", "case", "SYMBOL_64_HIGH", ":", "case", "SYMBOL_64_MID", ":", "case", "SYMBOL_64_LOW", ":", "if", "(", "Pmode", "==", "DImode", "&&", "!", "ABI_HAS_64BIT_SYMBOLS", ")", "return", "offset_within_block_p", "(", "x", ",", "INTVAL", "(", "offset", ")", ")", ";", "return", "true", ";", "case", "SYMBOL_PC_RELATIVE", ":", "if", "(", "GET_CODE", "(", "x", ")", "==", "LABEL_REF", ")", "return", "true", ";", "case", "SYMBOL_GP_RELATIVE", ":", "return", "offset_within_block_p", "(", "x", ",", "INTVAL", "(", "offset", ")", ")", ";", "case", "SYMBOL_GOT_PAGE_OFST", ":", "case", "SYMBOL_GOTOFF_PAGE", ":", "return", "SMALL_INT", "(", "offset", ")", ";", "case", "SYMBOL_TPREL", ":", "case", "SYMBOL_DTPREL", ":", "return", "mips_offset_within_alignment_p", "(", "x", ",", "INTVAL", "(", "offset", ")", ")", ";", "case", "SYMBOL_GOT_DISP", ":", "case", "SYMBOL_GOTOFF_DISP", ":", "case", "SYMBOL_GOTOFF_CALL", ":", "case", "SYMBOL_GOTOFF_LOADGP", ":", "case", "SYMBOL_TLSGD", ":", "case", "SYMBOL_TLSLDM", ":", "case", "SYMBOL_GOTTPREL", ":", "case", "SYMBOL_TLS", ":", "case", "SYMBOL_HALF", ":", "return", "false", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "symbolic", "constant", "that", "can", "be", "calculated", "in", "the", "same", "way", "as", "a", "bare", "symbol", ".", "If", "it", "is", ",", "store", "the", "type", "of", "the", "symbol", "in", "*", "SYMBOL_TYPE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_symbolic_constant_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33236, "Length": 241} {"ground_truth": ["", "static", "bool", "mips_symbol_binds_local_p", "(", "const_rtx", "x", ")", "{", "return", "(", "SYMBOL_REF_DECL", "(", "x", ")", "?", "targetm", ".", "binds_local_p", "(", "SYMBOL_REF_DECL", "(", "x", ")", ")", ":", "SYMBOL_REF_LOCAL_P", "(", "x", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "SYMBOL_REF", "X", "binds", "locally", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_symbol_binds_local_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33237, "Length": 32} {"ground_truth": ["", "static", "int", "mips_symbol_insns", "(", "enum", "mips_symbol_type", "type", ",", "machine_mode", "mode", ")", "{", "if", "(", "mode", "!=", "MAX_MACHINE_MODE", "&&", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "0", ";", "return", "mips_symbol_insns_1", "(", "type", ",", "mode", ")", "*", "(", "TARGET_MIPS16", "?", "2", ":", "1", ")", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "instructions", "needed", "to", "load", "a", "symbol", "of", "the", "given", "type", "into", "a", "register", ".", "If", "valid", "in", "an", "address", ",", "the", "same", "number", "of", "instructions", "are", "needed", "for", "loads", "and", "stores", ".", "Treat", "extended", "mips16", "instructions", "as", "two", "instructions", "."], "TS_V_token": ["mips", "0", "2", "1"], "File": "mips", "Func": "mips_symbol_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33238, "Length": 43} {"ground_truth": ["", "static", "int", "mips_symbol_insns_1", "(", "enum", "mips_symbol_type", "type", ",", "machine_mode", "mode", ")", "{", "if", "(", "mips_use_pcrel_pool_p", "[", "(", "int", ")", "type", "]", ")", "{", "if", "(", "mode", "==", "MAX_MACHINE_MODE", ")", "type", "=", "SYMBOL_PC_RELATIVE", ";", "else", "return", "0", ";", "}", "switch", "(", "type", ")", "{", "case", "SYMBOL_ABSOLUTE", ":", "return", "ABI_HAS_64BIT_SYMBOLS", "?", "6", ":", "TARGET_MIPS16", "?", "3", ":", "2", ";", "case", "SYMBOL_GP_RELATIVE", ":", "return", "1", ";", "case", "SYMBOL_PC_RELATIVE", ":", "if", "(", "mode", "==", "MAX_MACHINE_MODE", "||", "GET_MODE_SIZE", "(", "mode", ")", "==", "4", "||", "GET_MODE_SIZE", "(", "mode", ")", "==", "8", ")", "return", "1", ";", "return", "0", ";", "case", "SYMBOL_GOT_DISP", ":", "if", "(", "mode", "!=", "MAX_MACHINE_MODE", ")", "return", "0", ";", "case", "SYMBOL_GOT_PAGE_OFST", ":", "return", "3", ";", "case", "SYMBOL_GOTOFF_PAGE", ":", "case", "SYMBOL_GOTOFF_DISP", ":", "case", "SYMBOL_GOTOFF_CALL", ":", "case", "SYMBOL_GOTOFF_LOADGP", ":", "case", "SYMBOL_64_HIGH", ":", "case", "SYMBOL_64_MID", ":", "case", "SYMBOL_64_LOW", ":", "case", "SYMBOL_TLSGD", ":", "case", "SYMBOL_TLSLDM", ":", "case", "SYMBOL_DTPREL", ":", "case", "SYMBOL_GOTTPREL", ":", "case", "SYMBOL_TPREL", ":", "case", "SYMBOL_HALF", ":", "return", "!", "mips_split_p", "[", "type", "]", "?", "1", ":", "TARGET_MIPS16", "?", "3", ":", "2", ";", "case", "SYMBOL_TLS", ":", "return", "0", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Like", "mips_symbol_insns", ",", "but", "treat", "extended", "MIPS16", "instructions", "as", "a", "single", "instruction", ".", "We", "rely", "on", "the", "fact", "that", ",", "in", "the", "worst", "case", ",", "all", "instructions", "involved", "in", "a", "MIPS16", "address", "calculation", "are", "usually", "extended", "ones", "."], "TS_V_token": ["mips", "0", "6", "3", "2", "1", "4", "8", "1", "0", "0", "3", "1", "3", "2", "0"], "File": "mips", "Func": "mips_symbol_insns_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33239, "Length": 176} {"ground_truth": ["", "static", "const", "char", "*", "mips_sync_insn1_template", "(", "enum", "attr_sync_insn1", "type", ",", "bool", "is_64bit_p", ")", "{", "switch", "(", "type", ")", "{", "case", "SYNC_INSN1_MOVE", ":", "return", "\"move\\t%0,%z2\"", ";", "case", "SYNC_INSN1_LI", ":", "return", "\"li\\t%0,%2\"", ";", "case", "SYNC_INSN1_ADDU", ":", "return", "is_64bit_p", "?", "\"daddu\\t%0,%1,%z2\"", ":", "\"addu\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN1_ADDIU", ":", "return", "is_64bit_p", "?", "\"daddiu\\t%0,%1,%2\"", ":", "\"addiu\\t%0,%1,%2\"", ";", "case", "SYNC_INSN1_SUBU", ":", "return", "is_64bit_p", "?", "\"dsubu\\t%0,%1,%z2\"", ":", "\"subu\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN1_AND", ":", "return", "\"and\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN1_ANDI", ":", "return", "\"andi\\t%0,%1,%2\"", ";", "case", "SYNC_INSN1_OR", ":", "return", "\"or\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN1_ORI", ":", "return", "\"ori\\t%0,%1,%2\"", ";", "case", "SYNC_INSN1_XOR", ":", "return", "\"xor\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN1_XORI", ":", "return", "\"xori\\t%0,%1,%2\"", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Return", "the", "asm", "template", "associated", "with", "sync_insn1", "value", "TYPE", ".", "IS_64BIT_P", "is", "true", "if", "we", "want", "a", "64-bit", "rather", "than", "32-bit", "operation", "."], "TS_V_token": ["mips", "\"move\\t%0,%z2\"", "\"li\\t%0,%2\"", "\"daddu\\t%0,%1,%z2\"", "\"addu\\t%0,%1,%z2\"", "\"daddiu\\t%0,%1,%2\"", "\"addiu\\t%0,%1,%2\"", "\"dsubu\\t%0,%1,%z2\"", "\"subu\\t%0,%1,%z2\"", "\"and\\t%0,%1,%z2\"", "\"andi\\t%0,%1,%2\"", "\"or\\t%0,%1,%z2\"", "\"ori\\t%0,%1,%2\"", "\"xor\\t%0,%1,%z2\"", "\"xori\\t%0,%1,%2\""], "File": "mips", "Func": "mips_sync_insn1_template", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33240, "Length": 103} {"ground_truth": ["", "static", "const", "char", "*", "mips_sync_insn2_template", "(", "enum", "attr_sync_insn2", "type", ")", "{", "switch", "(", "type", ")", "{", "case", "SYNC_INSN2_NOP", ":", "gcc_unreachable", "(", ")", ";", "case", "SYNC_INSN2_AND", ":", "return", "\"and\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN2_XOR", ":", "return", "\"xor\\t%0,%1,%z2\"", ";", "case", "SYNC_INSN2_NOT", ":", "return", "\"nor\\t%0,%1,%.\"", ";", "}", "gcc_unreachable", "(", ")", ";", "}", ""], "natrual_language": ["Return", "the", "asm", "template", "associated", "with", "sync_insn2", "value", "TYPE", "."], "TS_V_token": ["mips", "\"and\\t%0,%1,%z2\"", "\"xor\\t%0,%1,%z2\"", "\"nor\\t%0,%1,%.\""], "File": "mips", "Func": "mips_sync_insn2_template", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33241, "Length": 47} {"ground_truth": ["", "unsigned", "int", "mips_sync_loop_insns", "(", "rtx_insn", "*", "insn", ",", "rtx", "*", "operands", ")", "{", "mips_branch_likely", "=", "TARGET_FIX_R10000", ";", "mips_process_sync_loop", "(", "insn", ",", "operands", ")", ";", "return", "mips_multi_num_insns", ";", "}", ""], "natrual_language": ["Return", "the", "number", "of", "individual", "instructions", "in", "sync", "loop", "INSN", ",", "which", "has", "the", "operands", "given", "by", "OPERANDS", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_sync_loop_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33242, "Length": 28} {"ground_truth": ["", "static", "bool", "mips_tls_symbol_p", "(", "rtx", "x", ")", "{", "return", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", "&&", "SYMBOL_REF_TLS_MODEL", "(", "x", ")", "!=", "0", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "thread-local", "symbol", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_tls_symbol_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33243, "Length": 24} {"ground_truth": ["", "int", "mips_trampoline_code_size", "(", "void", ")", "{", "if", "(", "TARGET_USE_PIC_FN_ADDR_REG", ")", "return", "4", "*", "4", ";", "else", "if", "(", "ptr_mode", "==", "DImode", ")", "return", "8", "*", "4", ";", "else", "if", "(", "ISA_HAS_LOAD_DELAY", ")", "return", "6", "*", "4", ";", "else", "return", "4", "*", "4", ";", "}", ""], "natrual_language": ["Return", "the", "size", "in", "bytes", "of", "the", "trampoline", "code", ",", "padded", "to", "TRAMPOLINE_ALIGNMENT", "bits", ".", "The", "static", "chain", "pointer", "and", "target", "function", "address", "immediately", "follow", "."], "TS_V_token": ["mips", "4", "4", "8", "4", "6", "4", "4", "4"], "File": "mips", "Func": "mips_trampoline_code_size", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33244, "Length": 44} {"ground_truth": ["", "static", "bool", "mips_truly_noop_truncation", "(", "poly_uint64", "outprec", ",", "poly_uint64", "inprec", ")", "{", "return", "!", "TARGET_64BIT", "||", "inprec", "<=", "32", "||", "outprec", ">", "32", ";", "}", ""], "natrual_language": ["Implement", "TARGET_TRULY_NOOP_TRUNCATION", "."], "TS_V_token": ["mips", "32", "32"], "File": "mips", "Func": "mips_truly_noop_truncation", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33245, "Length": 24} {"ground_truth": ["", "bool", "mips_unsigned_immediate_p", "(", "unsigned", "HOST_WIDE_INT", "x", ",", "int", "bits", ",", "int", "shift", "=", "0", ")", "{", "return", "(", "x", "&", "(", "(", "1", "<<", "shift", ")", "-", "1", ")", ")", "==", "0", "&&", "x", "<", "(", "(", "unsigned", ")", "1", "<<", "(", "shift", "+", "bits", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "fits", "within", "an", "unsigned", "field", "of", "BITS", "bits", "that", "is", "shifted", "left", "SHIFT", "bits", "before", "being", "used", "."], "TS_V_token": ["mips", "0", "1", "1", "0", "1"], "File": "mips", "Func": "mips_unsigned_immediate_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33246, "Length": 49} {"ground_truth": ["", "rtx", "mips_unspec_address", "(", "rtx", "address", ",", "enum", "mips_symbol_type", "symbol_type", ")", "{", "rtx", "base", ",", "offset", ";", "split_const", "(", "address", ",", "&", "base", ",", "&", "offset", ")", ";", "return", "mips_unspec_address_offset", "(", "base", ",", "offset", ",", "symbol_type", ")", ";", "}", ""], "natrual_language": ["Return", "an", "UNSPEC", "address", "with", "underlying", "address", "ADDRESS", "and", "symbol", "type", "SYMBOL_TYPE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_unspec_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33247, "Length": 38} {"ground_truth": ["", "static", "rtx", "mips_unspec_address_offset", "(", "rtx", "base", ",", "rtx", "offset", ",", "enum", "mips_symbol_type", "symbol_type", ")", "{", "base", "=", "gen_rtx_UNSPEC", "(", "Pmode", ",", "gen_rtvec", "(", "1", ",", "base", ")", ",", "UNSPEC_ADDRESS_FIRST", "+", "symbol_type", ")", ";", "if", "(", "offset", "!=", "const0_rtx", ")", "base", "=", "gen_rtx_PLUS", "(", "Pmode", ",", "base", ",", "offset", ")", ";", "return", "gen_rtx_CONST", "(", "Pmode", ",", "base", ")", ";", "}", ""], "natrual_language": ["Wrap", "symbol", "or", "label", "BASE", "in", "an", "UNSPEC", "address", "of", "type", "SYMBOL_TYPE", ",", "then", "add", "CONST_INT", "OFFSET", "to", "the", "result", "."], "TS_V_token": ["mips", "1"], "File": "mips", "Func": "mips_unspec_address_offset", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33248, "Length": 59} {"ground_truth": ["", "static", "rtx", "mips_unspec_call", "(", "rtx", "reg", ",", "rtx", "symbol", ")", "{", "rtvec", "vec", ";", "vec", "=", "gen_rtvec", "(", "3", ",", "reg", ",", "symbol", ",", "gen_rtx_REG", "(", "SImode", ",", "GOT_VERSION_REGNUM", ")", ")", ";", "return", "gen_rtx_UNSPEC", "(", "Pmode", ",", "vec", ",", "UNSPEC_LOAD_CALL", ")", ";", "}", ""], "natrual_language": ["Return", "the", "RHS", "of", "a", "load_call", "<", "mode", ">", "insn", "."], "TS_V_token": ["mips", "3"], "File": "mips", "Func": "mips_unspec_call", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33249, "Length": 43} {"ground_truth": ["", "static", "rtx", "mips_unspec_offset_high", "(", "rtx", "temp", ",", "rtx", "base", ",", "rtx", "addr", ",", "enum", "mips_symbol_type", "symbol_type", ")", "{", "if", "(", "mips_split_p", "[", "symbol_type", "]", ")", "{", "addr", "=", "gen_rtx_HIGH", "(", "Pmode", ",", "mips_unspec_address", "(", "addr", ",", "symbol_type", ")", ")", ";", "addr", "=", "mips_force_temporary", "(", "temp", ",", "addr", ")", ";", "base", "=", "mips_force_temporary", "(", "temp", ",", "gen_rtx_PLUS", "(", "Pmode", ",", "addr", ",", "base", ")", ")", ";", "}", "return", "base", ";", "}", ""], "natrual_language": ["If", "mips_unspec_address", "(", "ADDR", ",", "SYMBOL_TYPE", ")", "is", "a", "32-bit", "value", ",", "add", "the", "high", "part", "to", "BASE", "and", "return", "the", "result", ".", "Just", "return", "BASE", "otherwise", ".", "TEMP", "is", "available", "as", "a", "temporary", "register", "if", "needed", ".", "The", "returned", "expression", "can", "be", "used", "as", "the", "first", "operand", "to", "a", "LO_SUM", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_unspec_offset_high", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33250, "Length": 70} {"ground_truth": ["", "static", "bool", "mips_use_anchors_for_symbol_p", "(", "const_rtx", "symbol", ")", "{", "switch", "(", "mips_classify_symbol", "(", "symbol", ",", "SYMBOL_CONTEXT_MEM", ")", ")", "{", "case", "SYMBOL_PC_RELATIVE", ":", "case", "SYMBOL_GP_RELATIVE", ":", "return", "false", ";", "default", ":", "return", "default_use_anchors_for_symbol_p", "(", "symbol", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "TARGET_USE_ANCHORS_FOR_SYMBOL_P", ".", "We", "do", "n't", "want", "to", "use", "anchors", "for", "small", "data", ":", "the", "GP", "register", "acts", "as", "an", "anchor", "in", "that", "case", ".", "We", "also", "do", "n't", "want", "to", "use", "them", "for", "PC-relative", "accesses", ",", "where", "the", "PC", "acts", "as", "an", "anchor", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_use_anchors_for_symbol_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33251, "Length": 37} {"ground_truth": ["", "static", "bool", "mips_use_blocks_for_constant_p", "(", "machine_mode", "mode", "ATTRIBUTE_UNUSED", ",", "const_rtx", "x", "ATTRIBUTE_UNUSED", ")", "{", "return", "!", "TARGET_MIPS16_PCREL_LOADS", ";", "}", ""], "natrual_language": ["Implement", "TARGET_USE_BLOCKS_FOR_CONSTANT_P", ".", "We", "ca", "n't", "use", "blocks", "for", "constants", "when", "we", "'re", "using", "a", "per-function", "constant", "pool", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_use_blocks_for_constant_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33252, "Length": 18} {"ground_truth": ["", "bool", "mips_use_by_pieces_infrastructure_p", "(", "unsigned", "HOST_WIDE_INT", "size", ",", "unsigned", "int", "align", ",", "enum", "by_pieces_operation", "op", ",", "bool", "speed_p", ")", "{", "if", "(", "op", "==", "STORE_BY_PIECES", ")", "return", "mips_store_by_pieces_p", "(", "size", ",", "align", ")", ";", "if", "(", "op", "==", "MOVE_BY_PIECES", "&&", "HAVE_cpymemsi", ")", "{", "if", "(", "currently_expanding_to_rtl", ")", "return", "false", ";", "if", "(", "align", "<", "BITS_PER_WORD", ")", "return", "size", "<", "UNITS_PER_WORD", ";", "return", "size", "<=", "MIPS_MAX_MOVE_BYTES_STRAIGHT", ";", "}", "return", "default_use_by_pieces_infrastructure_p", "(", "size", ",", "align", ",", "op", ",", "speed_p", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_USE_MOVE_BY_PIECES_INFRASTRUCTURE_P", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_use_by_pieces_infrastructure_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33253, "Length": 79} {"ground_truth": ["", "static", "bool", "mips_use_debug_exception_return_p", "(", "tree", "type", ")", "{", "return", "lookup_attribute", "(", "\"use_debug_exception_return\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", "!=", "NULL", ";", "}", ""], "natrual_language": ["Check", "if", "the", "attribute", "to", "use", "debug", "exception", "return", "is", "set", "for", "a", "function", "."], "TS_V_token": ["mips", "\"use_debug_exception_return\""], "File": "mips", "Func": "mips_use_debug_exception_return_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33254, "Length": 22} {"ground_truth": ["", "bool", "mips_use_ins_ext_p", "(", "rtx", "op", ",", "HOST_WIDE_INT", "width", ",", "HOST_WIDE_INT", "bitpos", ")", "{", "if", "(", "!", "ISA_HAS_EXT_INS", "||", "!", "register_operand", "(", "op", ",", "VOIDmode", ")", "||", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", ">", "BITS_PER_WORD", ")", "return", "false", ";", "if", "(", "!", "IN_RANGE", "(", "width", ",", "1", ",", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "-", "1", ")", ")", "return", "false", ";", "if", "(", "bitpos", "<", "0", "||", "bitpos", "+", "width", ">", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "(", "zero_extract", "OP", "SIZE", "POSITION", ")", "can", "be", "used", "as", "the", "source", "of", "an", "``", "ext", "''", "instruction", "or", "the", "destination", "of", "an", "``", "ins", "''", "instruction", ".", "OP", "must", "be", "a", "register", "operand", "and", "the", "following", "conditions", "must", "hold", ":", "0", "<", "=", "POSITION", "<", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "0", "<", "SIZE", "<", "=", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "0", "<", "POSITION", "+", "SIZE", "<", "=", "GET_MODE_BITSIZE", "(", "GET_MODE", "(", "op", ")", ")", "Also", "reject", "lengths", "equal", "to", "a", "word", "as", "they", "are", "better", "handled", "by", "the", "move", "patterns", "."], "TS_V_token": ["mips", "1", "1", "0"], "File": "mips", "Func": "mips_use_ins_ext_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33255, "Length": 87} {"ground_truth": ["", "bool", "mips_use_pic_fn_addr_reg_p", "(", "const_rtx", "x", ")", "{", "if", "(", "!", "TARGET_USE_PIC_FN_ADDR_REG", ")", "return", "false", ";", "if", "(", "mips16_stub_function_p", "(", "x", ")", ")", "return", "false", ";", "if", "(", "GET_CODE", "(", "x", ")", "==", "SYMBOL_REF", ")", "{", "if", "(", "TARGET_ABICALLS_PIC0", ")", "return", "false", ";", "if", "(", "TARGET_ABSOLUTE_ABICALLS", "&&", "mips_symbol_binds_local_p", "(", "x", ")", "&&", "!", "SYMBOL_REF_EXTERNAL_P", "(", "x", ")", ")", "return", "false", ";", "}", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "calls", "to", "X", "might", "need", "$", "25", "to", "be", "valid", "on", "entry", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_use_pic_fn_addr_reg_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33256, "Length": 65} {"ground_truth": ["", "static", "enum", "mips_shadow_set", "mips_use_shadow_register_set", "(", "tree", "type", ")", "{", "tree", "attr", "=", "lookup_attribute", "(", "\"use_shadow_register_set\"", ",", "TYPE_ATTRIBUTES", "(", "type", ")", ")", ";", "tree", "args", ";", "if", "(", "attr", "==", "NULL", ")", "return", "SHADOW_SET_NO", ";", "args", "=", "TREE_VALUE", "(", "attr", ")", ";", "if", "(", "args", "==", "NULL", ")", "return", "SHADOW_SET_YES", ";", "return", "SHADOW_SET_INTSTACK", ";", "}", ""], "natrual_language": ["Return", "the", "mips_shadow_set", "if", "the", "``", "use_shadow_register_set", "''", "attribute", "is", "set", "for", "a", "function", "."], "TS_V_token": ["mips", "\"use_shadow_register_set\""], "File": "mips", "Func": "mips_use_shadow_register_set", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33257, "Length": 54} {"ground_truth": ["", "static", "bool", "mips_valid_base_register_p", "(", "rtx", "x", ",", "machine_mode", "mode", ",", "bool", "strict_p", ")", "{", "if", "(", "!", "strict_p", "&&", "GET_CODE", "(", "x", ")", "==", "SUBREG", ")", "x", "=", "SUBREG_REG", "(", "x", ")", ";", "return", "(", "REG_P", "(", "x", ")", "&&", "mips_regno_mode_ok_for_base_p", "(", "REGNO", "(", "x", ")", ",", "mode", ",", "strict_p", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "valid", "base", "register", "for", "the", "given", "mode", ".", "Allow", "only", "hard", "registers", "if", "STRICT", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_valid_base_register_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33258, "Length": 54} {"ground_truth": ["", "static", "bool", "mips_valid_lo_sum_p", "(", "enum", "mips_symbol_type", "symbol_type", ",", "machine_mode", "mode", ")", "{", "if", "(", "mips_symbol_insns", "(", "symbol_type", ",", "mode", ")", "==", "0", ")", "return", "false", ";", "if", "(", "mips_lo_relocs", "[", "symbol_type", "]", "==", "NULL", ")", "return", "false", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_WORD", "&&", "GET_MODE_BITSIZE", "(", "mode", ")", ">", "GET_MODE_ALIGNMENT", "(", "mode", ")", ")", "return", "false", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "LO_SUM", "can", "address", "a", "value", "of", "mode", "MODE", "when", "the", "LO_SUM", "symbol", "has", "type", "SYMBOL_TYPE", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "mips_valid_lo_sum_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33259, "Length": 74} {"ground_truth": ["", "static", "bool", "mips_valid_offset_p", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "if", "(", "!", "const_arith_operand", "(", "x", ",", "Pmode", ")", ")", "return", "false", ";", "if", "(", "GET_MODE_SIZE", "(", "mode", ")", ">", "UNITS_PER_WORD", "&&", "!", "SMALL_OPERAND", "(", "INTVAL", "(", "x", ")", "+", "GET_MODE_SIZE", "(", "mode", ")", "-", "UNITS_PER_WORD", ")", ")", "return", "false", ";", "if", "(", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", "&&", "!", "mips_signed_immediate_p", "(", "INTVAL", "(", "x", ")", ",", "10", ",", "mips_ldst_scaled_shift", "(", "mode", ")", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", ",", "for", "every", "base", "register", "BASE_REG", ",", "(", "plus", "BASE_REG", "X", ")", "can", "address", "a", "value", "of", "mode", "MODE", "."], "TS_V_token": ["mips", "10"], "File": "mips", "Func": "mips_valid_offset_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33260, "Length": 82} {"ground_truth": ["", "static", "bool", "mips_valid_pointer_mode", "(", "scalar_int_mode", "mode", ")", "{", "return", "mode", "==", "SImode", "||", "(", "TARGET_64BIT", "&&", "mode", "==", "DImode", ")", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VALID_POINTER_MODE", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_valid_pointer_mode", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33261, "Length": 22} {"ground_truth": ["", "static", "void", "mips_va_start", "(", "tree", "valist", ",", "rtx", "nextarg", ")", "{", "if", "(", "EABI_FLOAT_VARARGS_P", ")", "{", "const", "CUMULATIVE_ARGS", "*", "cum", ";", "tree", "f_ovfl", ",", "f_gtop", ",", "f_ftop", ",", "f_goff", ",", "f_foff", ";", "tree", "ovfl", ",", "gtop", ",", "ftop", ",", "goff", ",", "foff", ";", "tree", "t", ";", "int", "gpr_save_area_size", ";", "int", "fpr_save_area_size", ";", "int", "fpr_offset", ";", "cum", "=", "&", "crtl", "->", "args", ".", "info", ";", "gpr_save_area_size", "=", "(", "MAX_ARGS_IN_REGISTERS", "-", "cum", "->", "num_gprs", ")", "*", "UNITS_PER_WORD", ";", "fpr_save_area_size", "=", "(", "MAX_ARGS_IN_REGISTERS", "-", "cum", "->", "num_fprs", ")", "*", "UNITS_PER_FPREG", ";", "f_ovfl", "=", "TYPE_FIELDS", "(", "va_list_type_node", ")", ";", "f_gtop", "=", "DECL_CHAIN", "(", "f_ovfl", ")", ";", "f_ftop", "=", "DECL_CHAIN", "(", "f_gtop", ")", ";", "f_goff", "=", "DECL_CHAIN", "(", "f_ftop", ")", ";", "f_foff", "=", "DECL_CHAIN", "(", "f_goff", ")", ";", "ovfl", "=", "build3", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_ovfl", ")", ",", "valist", ",", "f_ovfl", ",", "NULL_TREE", ")", ";", "gtop", "=", "build3", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_gtop", ")", ",", "valist", ",", "f_gtop", ",", "NULL_TREE", ")", ";", "ftop", "=", "build3", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_ftop", ")", ",", "valist", ",", "f_ftop", ",", "NULL_TREE", ")", ";", "goff", "=", "build3", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_goff", ")", ",", "valist", ",", "f_goff", ",", "NULL_TREE", ")", ";", "foff", "=", "build3", "(", "COMPONENT_REF", ",", "TREE_TYPE", "(", "f_foff", ")", ",", "valist", ",", "f_foff", ",", "NULL_TREE", ")", ";", "t", "=", "make_tree", "(", "TREE_TYPE", "(", "ovfl", ")", ",", "virtual_incoming_args_rtx", ")", ";", "if", "(", "cum", "->", "stack_words", ">", "0", ")", "t", "=", "fold_build_pointer_plus_hwi", "(", "t", ",", "cum", "->", "stack_words", "*", "UNITS_PER_WORD", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "ovfl", ")", ",", "ovfl", ",", "t", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "make_tree", "(", "TREE_TYPE", "(", "gtop", ")", ",", "virtual_incoming_args_rtx", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "gtop", ")", ",", "gtop", ",", "t", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "make_tree", "(", "TREE_TYPE", "(", "ftop", ")", ",", "virtual_incoming_args_rtx", ")", ";", "fpr_offset", "=", "gpr_save_area_size", "+", "UNITS_PER_FPVALUE", "-", "1", ";", "fpr_offset", "&=", "-", "UNITS_PER_FPVALUE", ";", "if", "(", "fpr_offset", ")", "t", "=", "fold_build_pointer_plus_hwi", "(", "t", ",", "-", "fpr_offset", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "ftop", ")", ",", "ftop", ",", "t", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "goff", ")", ",", "goff", ",", "build_int_cst", "(", "TREE_TYPE", "(", "goff", ")", ",", "gpr_save_area_size", ")", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "t", "=", "build2", "(", "MODIFY_EXPR", ",", "TREE_TYPE", "(", "foff", ")", ",", "foff", ",", "build_int_cst", "(", "TREE_TYPE", "(", "foff", ")", ",", "fpr_save_area_size", ")", ")", ";", "expand_expr", "(", "t", ",", "const0_rtx", ",", "VOIDmode", ",", "EXPAND_NORMAL", ")", ";", "}", "else", "{", "nextarg", "=", "plus_constant", "(", "Pmode", ",", "nextarg", ",", "-", "cfun", "->", "machine", "->", "varargs_size", ")", ";", "std_expand_builtin_va_start", "(", "valist", ",", "nextarg", ")", ";", "}", "}", ""], "natrual_language": ["Implement", "va_start", "."], "TS_V_token": ["mips", "0", "1"], "File": "mips", "Func": "mips_va_start", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33262, "Length": 476} {"ground_truth": ["", "static", "bool", "mips_vectorize_vec_perm_const", "(", "machine_mode", "vmode", ",", "rtx", "target", ",", "rtx", "op0", ",", "rtx", "op1", ",", "const", "vec_perm_indices", "&", "sel", ")", "{", "struct", "expand_vec_perm_d", "d", ";", "int", "i", ",", "nelt", ",", "which", ";", "unsigned", "char", "orig_perm", "[", "MAX_VECT_LEN", "]", ";", "bool", "ok", ";", "d", ".", "target", "=", "target", ";", "if", "(", "op0", ")", "{", "rtx", "nop0", "=", "force_reg", "(", "vmode", ",", "op0", ")", ";", "if", "(", "op0", "==", "op1", ")", "op1", "=", "nop0", ";", "op0", "=", "nop0", ";", "}", "if", "(", "op1", ")", "op1", "=", "force_reg", "(", "vmode", ",", "op1", ")", ";", "d", ".", "op0", "=", "op0", ";", "d", ".", "op1", "=", "op1", ";", "d", ".", "vmode", "=", "vmode", ";", "gcc_assert", "(", "VECTOR_MODE_P", "(", "vmode", ")", ")", ";", "d", ".", "nelt", "=", "nelt", "=", "GET_MODE_NUNITS", "(", "vmode", ")", ";", "d", ".", "testing_p", "=", "!", "target", ";", "memset", "(", "orig_perm", ",", "0", ",", "MAX_VECT_LEN", ")", ";", "for", "(", "i", "=", "which", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "{", "int", "ei", "=", "sel", "[", "i", "]", "&", "(", "2", "*", "nelt", "-", "1", ")", ";", "which", "|=", "(", "ei", "<", "nelt", "?", "1", ":", "2", ")", ";", "orig_perm", "[", "i", "]", "=", "ei", ";", "}", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "switch", "(", "which", ")", "{", "default", ":", "gcc_unreachable", "(", ")", ";", "case", "3", ":", "d", ".", "one_vector_p", "=", "false", ";", "if", "(", "d", ".", "testing_p", "||", "!", "rtx_equal_p", "(", "d", ".", "op0", ",", "d", ".", "op1", ")", ")", "break", ";", "case", "2", ":", "for", "(", "i", "=", "0", ";", "i", "<", "nelt", ";", "++", "i", ")", "d", ".", "perm", "[", "i", "]", "&=", "nelt", "-", "1", ";", "d", ".", "op0", "=", "d", ".", "op1", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "case", "1", ":", "d", ".", "op1", "=", "d", ".", "op0", ";", "d", ".", "one_vector_p", "=", "true", ";", "break", ";", "}", "if", "(", "d", ".", "testing_p", ")", "{", "d", ".", "target", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "1", ")", ";", "d", ".", "op1", "=", "d", ".", "op0", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "2", ")", ";", "if", "(", "!", "d", ".", "one_vector_p", ")", "d", ".", "op1", "=", "gen_raw_REG", "(", "d", ".", "vmode", ",", "LAST_VIRTUAL_REGISTER", "+", "3", ")", ";", "start_sequence", "(", ")", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "end_sequence", "(", ")", ";", "return", "ok", ";", "}", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "if", "(", "!", "ok", "&&", "which", "==", "3", ")", "{", "d", ".", "op0", "=", "op0", ";", "d", ".", "op1", "=", "op1", ";", "d", ".", "one_vector_p", "=", "false", ";", "memcpy", "(", "d", ".", "perm", ",", "orig_perm", ",", "MAX_VECT_LEN", ")", ";", "ok", "=", "mips_expand_vec_perm_const_1", "(", "&", "d", ")", ";", "}", "return", "ok", ";", "}", ""], "natrual_language": ["Implement", "TARGET_VECTORIZE_VEC_PERM_CONST", "."], "TS_V_token": ["mips", "0", "0", "2", "1", "1", "2", "3", "2", "0", "1", "1", "1", "2", "3", "3"], "File": "mips", "Func": "mips_vectorize_vec_perm_const", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33263, "Length": 454} {"ground_truth": ["", "static", "bool", "mips_vector_mode_supported_p", "(", "machine_mode", "mode", ")", "{", "switch", "(", "mode", ")", "{", "case", "E_V2SFmode", ":", "return", "TARGET_PAIRED_SINGLE_FLOAT", ";", "case", "E_V2HImode", ":", "case", "E_V4QImode", ":", "case", "E_V2HQmode", ":", "case", "E_V2UHQmode", ":", "case", "E_V2HAmode", ":", "case", "E_V2UHAmode", ":", "case", "E_V4QQmode", ":", "case", "E_V4UQQmode", ":", "return", "TARGET_DSP", ";", "case", "E_V2SImode", ":", "case", "E_V4HImode", ":", "case", "E_V8QImode", ":", "return", "TARGET_LOONGSON_MMI", ";", "default", ":", "return", "MSA_SUPPORTED_MODE_P", "(", "mode", ")", ";", "}", "}", ""], "natrual_language": ["Target", "hook", "for", "vector_mode_supported_p", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "mips_vector_mode_supported_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33264, "Length": 68} {"ground_truth": ["", "static", "int", "mips_zero_extend_cost", "(", "machine_mode", "mode", ",", "rtx", "op", ")", "{", "if", "(", "MEM_P", "(", "op", ")", ")", "return", "0", ";", "if", "(", "TARGET_64BIT", "&&", "mode", "==", "DImode", "&&", "GET_MODE", "(", "op", ")", "==", "SImode", ")", "return", "COSTS_N_INSNS", "(", "TARGET_MIPS16", "?", "4", ":", "2", ")", ";", "if", "(", "GENERATE_MIPS16E", ")", "return", "COSTS_N_INSNS", "(", "1", ")", ";", "if", "(", "TARGET_MIPS16", ")", "return", "COSTS_N_INSNS", "(", "GET_MODE", "(", "op", ")", "==", "QImode", "?", "2", ":", "3", ")", ";", "return", "COSTS_N_INSNS", "(", "1", ")", ";", "}", ""], "natrual_language": ["Return", "the", "cost", "of", "zero-extending", "OP", "to", "mode", "MODE", ",", "not", "including", "the", "cost", "of", "OP", "itself", "."], "TS_V_token": ["mips", "0", "4", "2", "1", "2", "3", "1"], "File": "mips", "Func": "mips_zero_extend_cost", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33265, "Length": 82} {"ground_truth": ["", "static", "rtx", "mips_zero_if_equal", "(", "rtx", "cmp0", ",", "rtx", "cmp1", ")", "{", "if", "(", "cmp1", "==", "const0_rtx", ")", "return", "cmp0", ";", "if", "(", "uns_arith_operand", "(", "cmp1", ",", "VOIDmode", ")", ")", "return", "expand_binop", "(", "GET_MODE", "(", "cmp0", ")", ",", "xor_optab", ",", "cmp0", ",", "cmp1", ",", "0", ",", "0", ",", "OPTAB_DIRECT", ")", ";", "return", "expand_binop", "(", "GET_MODE", "(", "cmp0", ")", ",", "sub_optab", ",", "cmp0", ",", "cmp1", ",", "0", ",", "0", ",", "OPTAB_DIRECT", ")", ";", "}", ""], "natrual_language": ["Return", "a", "register", "that", "is", "zero", "iff", "CMP0", "and", "CMP1", "are", "equal", ".", "The", "register", "will", "have", "the", "same", "mode", "as", "CMP0", "."], "TS_V_token": ["mips", "0", "0", "0", "0"], "File": "mips", "Func": "mips_zero_if_equal", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33266, "Length": 72} {"ground_truth": ["", "static", "void", "r10k_insert_cache_barriers", "(", "void", ")", "{", "int", "*", "rev_post_order", ";", "unsigned", "int", "i", ",", "n", ";", "basic_block", "bb", ";", "sbitmap", "protected_bbs", ";", "rtx_insn", "*", "insn", ",", "*", "end", ";", "rtx", "unprotected_region", ";", "if", "(", "TARGET_MIPS16", ")", "{", "sorry", "(", "\"%qs does not support MIPS16 code\"", ",", "\"-mr10k-cache-barrier\"", ")", ";", "return", ";", "}", "calculate_dominance_info", "(", "CDI_DOMINATORS", ")", ";", "protected_bbs", "=", "sbitmap_alloc", "(", "last_basic_block_for_fn", "(", "cfun", ")", ")", ";", "bitmap_clear", "(", "protected_bbs", ")", ";", "rev_post_order", "=", "XNEWVEC", "(", "int", ",", "last_basic_block_for_fn", "(", "cfun", ")", ")", ";", "n", "=", "pre_and_rev_post_order_compute", "(", "NULL", ",", "rev_post_order", ",", "false", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "n", ";", "i", "++", ")", "{", "bb", "=", "BASIC_BLOCK_FOR_FN", "(", "cfun", ",", "rev_post_order", "[", "i", "]", ")", ";", "if", "(", "r10k_protected_bb_p", "(", "bb", ",", "protected_bbs", ")", ")", "unprotected_region", "=", "NULL_RTX", ";", "else", "unprotected_region", "=", "pc_rtx", ";", "end", "=", "NEXT_INSN", "(", "BB_END", "(", "bb", ")", ")", ";", "for", "(", "insn", "=", "BB_HEAD", "(", "bb", ")", ";", "insn", "!=", "end", ";", "insn", "=", "NEXT_INSN", "(", "insn", ")", ")", "{", "if", "(", "unprotected_region", "&&", "USEFUL_INSN_P", "(", "insn", ")", ")", "{", "if", "(", "recog_memoized", "(", "insn", ")", "==", "CODE_FOR_mips_cache", ")", "unprotected_region", "=", "NULL_RTX", ";", "else", "{", "if", "(", "unprotected_region", "==", "pc_rtx", ")", "unprotected_region", "=", "insn", ";", "if", "(", "r10k_needs_protection_p", "(", "insn", ")", ")", "{", "emit_insn_before", "(", "gen_r10k_cache_barrier", "(", ")", ",", "as_a", "<", "rtx_insn", "*", ">", "(", "unprotected_region", ")", ")", ";", "unprotected_region", "=", "NULL_RTX", ";", "}", "}", "}", "if", "(", "CALL_P", "(", "insn", ")", ")", "unprotected_region", "=", "pc_rtx", ";", "}", "if", "(", "unprotected_region", "==", "NULL_RTX", ")", "bitmap_set_bit", "(", "protected_bbs", ",", "bb", "->", "index", ")", ";", "}", "XDELETEVEC", "(", "rev_post_order", ")", ";", "sbitmap_free", "(", "protected_bbs", ")", ";", "free_dominance_info", "(", "CDI_DOMINATORS", ")", ";", "}", ""], "natrual_language": ["Implement", "-mr10k-cache-barrier=", "for", "the", "current", "function", "."], "TS_V_token": ["mips", "\"%qs does not support MIPS16 code\"", "\"-mr10k-cache-barrier\"", "0"], "File": "mips", "Func": "r10k_insert_cache_barriers", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33267, "Length": 276} {"ground_truth": ["", "static", "bool", "r10k_needs_protection_p", "(", "rtx_insn", "*", "insn", ")", "{", "if", "(", "CALL_P", "(", "insn", ")", ")", "return", "r10k_needs_protection_p_call", "(", "PATTERN", "(", "insn", ")", ")", ";", "if", "(", "mips_r10k_cache_barrier", "==", "R10K_CACHE_BARRIER_STORE", ")", "{", "note_stores", "(", "insn", ",", "r10k_needs_protection_p_store", ",", "&", "insn", ")", ";", "return", "insn", "==", "NULL_RTX", ";", "}", "return", "r10k_needs_protection_p_1", "(", "PATTERN", "(", "insn", ")", ",", "insn", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "instruction", "INSN", "needs", "to", "be", "protected", "by", "an", "R10K", "cache", "barrier", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "r10k_needs_protection_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33268, "Length": 60} {"ground_truth": ["", "static", "bool", "r10k_needs_protection_p_1", "(", "rtx", "x", ",", "rtx_insn", "*", "insn", ")", "{", "subrtx_var_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX_VAR", "(", "iter", ",", "array", ",", "x", ",", "NONCONST", ")", "{", "rtx", "mem", "=", "*", "iter", ";", "if", "(", "MEM_P", "(", "mem", ")", ")", "{", "if", "(", "(", "MEM_EXPR", "(", "mem", ")", "&&", "MEM_OFFSET_KNOWN_P", "(", "mem", ")", "&&", "r10k_safe_mem_expr_p", "(", "MEM_EXPR", "(", "mem", ")", ",", "MEM_OFFSET", "(", "mem", ")", ")", ")", "||", "r10k_safe_address_p", "(", "XEXP", "(", "mem", ",", "0", ")", ",", "insn", ")", ")", "iter", ".", "skip_subrtxes", "(", ")", ";", "else", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "contains", "a", "MEM", "that", "is", "not", "safe", "from", "R10K", "speculation", ".", "INSN", "is", "the", "instruction", "that", "contains", "X", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "r10k_needs_protection_p_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33269, "Length": 97} {"ground_truth": ["", "static", "bool", "r10k_needs_protection_p_call", "(", "const_rtx", "x", ")", "{", "subrtx_iterator", "::", "array_type", "array", ";", "FOR_EACH_SUBRTX", "(", "iter", ",", "array", ",", "x", ",", "NONCONST", ")", "{", "const_rtx", "mem", "=", "*", "iter", ";", "if", "(", "MEM_P", "(", "mem", ")", ")", "{", "const_rtx", "addr", "=", "XEXP", "(", "mem", ",", "0", ")", ";", "if", "(", "GET_CODE", "(", "addr", ")", "==", "SYMBOL_REF", "&&", "SYMBOL_REF_DECL", "(", "addr", ")", ")", "iter", ".", "skip_subrtxes", "(", ")", ";", "else", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["X", "is", "the", "pattern", "of", "a", "call", "instruction", ".", "Return", "true", "if", "the", "call", "is", "not", "to", "a", "declared", "function", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "r10k_needs_protection_p_call", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33270, "Length": 78} {"ground_truth": ["", "static", "void", "r10k_needs_protection_p_store", "(", "rtx", "x", ",", "const_rtx", "pat", "ATTRIBUTE_UNUSED", ",", "void", "*", "data", ")", "{", "rtx_insn", "*", "*", "insn_ptr", ";", "insn_ptr", "=", "(", "rtx_insn", "*", "*", ")", "data", ";", "if", "(", "*", "insn_ptr", "&&", "r10k_needs_protection_p_1", "(", "x", ",", "*", "insn_ptr", ")", ")", "*", "insn_ptr", "=", "NULL", ";", "}", ""], "natrual_language": ["A", "note_stores", "callback", "for", "which", "DATA", "points", "to", "an", "instruction", "pointer", ".", "If", "*", "DATA", "is", "nonnull", ",", "make", "it", "null", "if", "it", "X", "contains", "a", "MEM", "that", "is", "not", "safe", "from", "R10K", "speculation", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "r10k_needs_protection_p_store", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33271, "Length": 49} {"ground_truth": ["", "static", "bool", "r10k_protected_bb_p", "(", "basic_block", "bb", ",", "sbitmap", "protected_bbs", ")", "{", "edge_iterator", "ei", ";", "edge", "e", ";", "FOR_EACH_EDGE", "(", "e", ",", "ei", ",", "bb", "->", "preds", ")", "if", "(", "!", "single_succ_p", "(", "e", "->", "src", ")", "||", "!", "bitmap_bit_p", "(", "protected_bbs", ",", "e", "->", "src", "->", "index", ")", "||", "(", "e", "->", "flags", "&", "EDGE_COMPLEX", ")", "!=", "0", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "BB", "is", "only", "reached", "by", "blocks", "in", "PROTECTED_BBS", "and", "if", "every", "edge", "is", "unconditional", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "r10k_protected_bb_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33272, "Length": 66} {"ground_truth": ["", "static", "bool", "r10k_safe_address_p", "(", "rtx", "x", ",", "rtx_insn", "*", "insn", ")", "{", "rtx", "base", ",", "offset", ";", "HOST_WIDE_INT", "offset_val", ";", "x", "=", "r10k_simplify_address", "(", "x", ",", "insn", ")", ";", "mips_split_plus", "(", "x", ",", "&", "base", ",", "&", "offset_val", ")", ";", "if", "(", "base", "==", "virtual_incoming_args_rtx", "&&", "offset_val", ">=", "-", "cfun", "->", "machine", "->", "frame", ".", "total_size", "&&", "offset_val", "<", "cfun", "->", "machine", "->", "frame", ".", "args_size", ")", "return", "true", ";", "if", "(", "CONST_INT_P", "(", "x", ")", ")", "return", "r10k_uncached_address_p", "(", "INTVAL", "(", "x", ")", ")", ";", "split_const", "(", "x", ",", "&", "base", ",", "&", "offset", ")", ";", "return", "offset_within_block_p", "(", "base", ",", "INTVAL", "(", "offset", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "we", "can", "prove", "that", "an", "access", "to", "address", "X", "in", "instruction", "INSN", "would", "be", "safe", "from", "R10K", "speculation", ".", "This", "X", "is", "a", "general", "expression", ";", "it", "might", "not", "be", "a", "legitimate", "address", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "r10k_safe_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33273, "Length": 109} {"ground_truth": ["", "static", "bool", "r10k_safe_mem_expr_p", "(", "tree", "expr", ",", "unsigned", "HOST_WIDE_INT", "offset", ")", "{", "poly_int64", "bitoffset", ",", "bitsize", ";", "tree", "inner", ",", "var_offset", ";", "machine_mode", "mode", ";", "int", "unsigned_p", ",", "reverse_p", ",", "volatile_p", ";", "inner", "=", "get_inner_reference", "(", "expr", ",", "&", "bitsize", ",", "&", "bitoffset", ",", "&", "var_offset", ",", "&", "mode", ",", "&", "unsigned_p", ",", "&", "reverse_p", ",", "&", "volatile_p", ")", ";", "if", "(", "!", "DECL_P", "(", "inner", ")", "||", "!", "DECL_SIZE_UNIT", "(", "inner", ")", "||", "var_offset", ")", "return", "false", ";", "offset", "+=", "bitoffset", "/", "BITS_PER_UNIT", ";", "return", "offset", "<", "tree_to_uhwi", "(", "DECL_SIZE_UNIT", "(", "inner", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "a", "MEM", "with", "MEM_EXPR", "EXPR", "and", "MEM_OFFSET", "OFFSET", "is", "an", "in-range", "access", "to", "an", "automatic", "variable", ",", "or", "to", "an", "object", "with", "a", "link-time-constant", "address", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "r10k_safe_mem_expr_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33274, "Length": 97} {"ground_truth": ["", "static", "bool", "r10k_simplified_address_p", "(", "rtx", "x", ")", "{", "if", "(", "GET_CODE", "(", "x", ")", "==", "PLUS", "&&", "CONST_INT_P", "(", "XEXP", "(", "x", ",", "1", ")", ")", ")", "x", "=", "XEXP", "(", "x", ",", "0", ")", ";", "return", "x", "==", "virtual_incoming_args_rtx", "||", "CONSTANT_P", "(", "x", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "it", "is", "worth", "r10k_simplify_address", "'s", "while", "replacing", "an", "address", "with", "X", ".", "We", "are", "looking", "for", "constants", ",", "and", "for", "addresses", "at", "a", "known", "offset", "from", "the", "incoming", "stack", "pointer", "."], "TS_V_token": ["mips", "1", "0"], "File": "mips", "Func": "r10k_simplified_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33275, "Length": 47} {"ground_truth": ["", "static", "rtx", "r10k_simplify_address", "(", "rtx", "x", ",", "rtx_insn", "*", "insn", ")", "{", "rtx", "newx", ",", "op0", ",", "op1", ",", "set", ",", "note", ";", "rtx_insn", "*", "def_insn", ";", "df_ref", "use", ",", "def", ";", "struct", "df_link", "*", "defs", ";", "newx", "=", "NULL_RTX", ";", "if", "(", "UNARY_P", "(", "x", ")", ")", "{", "op0", "=", "r10k_simplify_address", "(", "XEXP", "(", "x", ",", "0", ")", ",", "insn", ")", ";", "if", "(", "op0", "!=", "XEXP", "(", "x", ",", "0", ")", ")", "newx", "=", "simplify_gen_unary", "(", "GET_CODE", "(", "x", ")", ",", "GET_MODE", "(", "x", ")", ",", "op0", ",", "GET_MODE", "(", "XEXP", "(", "x", ",", "0", ")", ")", ")", ";", "}", "else", "if", "(", "BINARY_P", "(", "x", ")", ")", "{", "op0", "=", "r10k_simplify_address", "(", "XEXP", "(", "x", ",", "0", ")", ",", "insn", ")", ";", "op1", "=", "r10k_simplify_address", "(", "XEXP", "(", "x", ",", "1", ")", ",", "insn", ")", ";", "if", "(", "op0", "!=", "XEXP", "(", "x", ",", "0", ")", "||", "op1", "!=", "XEXP", "(", "x", ",", "1", ")", ")", "newx", "=", "simplify_gen_binary", "(", "GET_CODE", "(", "x", ")", ",", "GET_MODE", "(", "x", ")", ",", "op0", ",", "op1", ")", ";", "}", "else", "if", "(", "GET_CODE", "(", "x", ")", "==", "LO_SUM", ")", "{", "op0", "=", "r10k_simplify_address", "(", "XEXP", "(", "x", ",", "0", ")", ",", "insn", ")", ";", "if", "(", "GET_CODE", "(", "op0", ")", "==", "HIGH", ")", "newx", "=", "XEXP", "(", "x", ",", "1", ")", ";", "}", "else", "if", "(", "REG_P", "(", "x", ")", ")", "{", "use", "=", "df_find_use", "(", "insn", ",", "regno_reg_rtx", "[", "REGNO", "(", "x", ")", "]", ")", ";", "gcc_assert", "(", "use", ")", ";", "defs", "=", "DF_REF_CHAIN", "(", "use", ")", ";", "if", "(", "defs", "&&", "defs", "->", "next", "==", "NULL", ")", "{", "def", "=", "defs", "->", "ref", ";", "if", "(", "DF_REF_IS_ARTIFICIAL", "(", "def", ")", ")", "{", "if", "(", "x", "==", "stack_pointer_rtx", "&&", "DF_REF_BB", "(", "def", ")", "==", "ENTRY_BLOCK_PTR_FOR_FN", "(", "cfun", ")", ")", "newx", "=", "virtual_incoming_args_rtx", ";", "}", "else", "if", "(", "dominated_by_p", "(", "CDI_DOMINATORS", ",", "DF_REF_BB", "(", "use", ")", ",", "DF_REF_BB", "(", "def", ")", ")", ")", "{", "def_insn", "=", "DF_REF_INSN", "(", "def", ")", ";", "if", "(", "NONJUMP_INSN_P", "(", "def_insn", ")", ")", "{", "set", "=", "single_set", "(", "def_insn", ")", ";", "if", "(", "set", "&&", "rtx_equal_p", "(", "SET_DEST", "(", "set", ")", ",", "x", ")", ")", "{", "note", "=", "find_reg_equal_equiv_note", "(", "def_insn", ")", ";", "if", "(", "note", ")", "newx", "=", "XEXP", "(", "note", ",", "0", ")", ";", "else", "newx", "=", "SET_SRC", "(", "set", ")", ";", "newx", "=", "r10k_simplify_address", "(", "newx", ",", "def_insn", ")", ";", "}", "}", "}", "}", "}", "if", "(", "newx", "&&", "r10k_simplified_address_p", "(", "newx", ")", ")", "return", "newx", ";", "return", "x", ";", "}", ""], "natrual_language": ["X", "is", "an", "expression", "that", "appears", "in", "INSN", ".", "Try", "to", "use", "the", "UD", "chains", "to", "simplify", "it", ",", "returning", "the", "simplified", "form", "on", "success", "and", "the", "original", "form", "otherwise", ".", "Replace", "the", "incoming", "value", "of", "$", "sp", "with", "virtual_incoming_args_rtx", "(", "which", "should", "never", "occur", "in", "X", "otherwise", ")", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "1", "0", "1", "0", "1", "0"], "File": "mips", "Func": "r10k_simplify_address", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33276, "Length": 419} {"ground_truth": ["", "static", "bool", "r10k_uncached_address_p", "(", "unsigned", "HOST_WIDE_INT", "address", ")", "{", "unsigned", "HOST_WIDE_INT", "upper", ";", "if", "(", "address", "+", "0x60000000", "<", "0x20000000", ")", "return", "true", ";", "if", "(", "Pmode", "==", "DImode", ")", "{", "upper", "=", "(", "address", ">>", "40", ")", "&", "0xf9ffff", ";", "if", "(", "upper", "==", "0x900000", "||", "upper", "==", "0xb80000", ")", "return", "true", ";", "}", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "ADDRESS", "is", "known", "to", "be", "an", "uncached", "address", "on", "R10K", "systems", "."], "TS_V_token": ["mips", "0x60000000", "0x20000000", "40", "0xf9ffff", "0x900000", "0xb80000"], "File": "mips", "Func": "r10k_uncached_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33277, "Length": 59} {"ground_truth": ["", "bool", "umips_12bit_offset_address_p", "(", "rtx", "x", ",", "machine_mode", "mode", ")", "{", "struct", "mips_address_info", "addr", ";", "return", "(", "mips_classify_address", "(", "&", "addr", ",", "x", ",", "mode", ",", "false", ")", "&&", "addr", ".", "type", "==", "ADDRESS_REG", "&&", "CONST_INT_P", "(", "addr", ".", "offset", ")", "&&", "UMIPS_12BIT_OFFSET_P", "(", "INTVAL", "(", "addr", ".", "offset", ")", ")", ")", ";", "}", ""], "natrual_language": ["Return", "true", "if", "X", "is", "a", "legitimate", "address", "with", "a", "12-bit", "offset", ".", "MODE", "is", "the", "mode", "of", "the", "value", "being", "accessed", "."], "TS_V_token": ["mips"], "File": "mips", "Func": "umips_12bit_offset_address_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33278, "Length": 53} {"ground_truth": ["", "static", "bool", "umips_build_save_restore", "(", "mips_save_restore_fn", "fn", ",", "unsigned", "*", "mask", ",", "HOST_WIDE_INT", "*", "offset", ")", "{", "int", "nregs", ";", "unsigned", "int", "i", ",", "j", ";", "rtx", "pattern", ",", "set", ",", "reg", ",", "mem", ";", "HOST_WIDE_INT", "this_offset", ";", "rtx", "this_base", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "umips_swm_mask", ")", ";", "i", "++", ")", "if", "(", "(", "*", "mask", "&", "0xffff0000", ")", "==", "umips_swm_mask", "[", "i", "]", ")", "break", ";", "if", "(", "i", "==", "ARRAY_SIZE", "(", "umips_swm_mask", ")", ")", "return", "false", ";", "nregs", "=", "(", "umips_swm_encoding", "[", "i", "]", "&", "0xf", ")", "+", "(", "umips_swm_encoding", "[", "i", "]", ">>", "4", ")", ";", "this_offset", "=", "*", "offset", "-", "UNITS_PER_WORD", "*", "(", "nregs", "-", "1", ")", ";", "if", "(", "!", "UMIPS_12BIT_OFFSET_P", "(", "this_offset", ")", ")", "return", "false", ";", "pattern", "=", "gen_rtx_PARALLEL", "(", "VOIDmode", ",", "rtvec_alloc", "(", "nregs", ")", ")", ";", "this_base", "=", "stack_pointer_rtx", ";", "for", "(", "j", "=", "0", ";", "j", "<", "(", "umips_swm_encoding", "[", "i", "]", "&", "0xf", ")", ";", "j", "++", ")", "{", "HOST_WIDE_INT", "offset", "=", "this_offset", "+", "j", "*", "UNITS_PER_WORD", ";", "mem", "=", "gen_frame_mem", "(", "SImode", ",", "plus_constant", "(", "Pmode", ",", "this_base", ",", "offset", ")", ")", ";", "unsigned", "int", "regno", "=", "(", "j", "!=", "8", ")", "?", "16", "+", "j", ":", "30", ";", "*", "mask", "&=", "~", "(", "1", "<<", "regno", ")", ";", "reg", "=", "gen_rtx_REG", "(", "SImode", ",", "regno", ")", ";", "if", "(", "fn", "==", "mips_save_reg", ")", "set", "=", "mips_frame_set", "(", "mem", ",", "reg", ")", ";", "else", "{", "set", "=", "gen_rtx_SET", "(", "reg", ",", "mem", ")", ";", "mips_add_cfa_restore", "(", "reg", ")", ";", "}", "XVECEXP", "(", "pattern", ",", "0", ",", "j", ")", "=", "set", ";", "}", "if", "(", "umips_swm_encoding", "[", "i", "]", ">>", "4", ")", "{", "HOST_WIDE_INT", "offset", "=", "this_offset", "+", "j", "*", "UNITS_PER_WORD", ";", "*", "mask", "&=", "~", "(", "1", "<<", "31", ")", ";", "mem", "=", "gen_frame_mem", "(", "SImode", ",", "plus_constant", "(", "Pmode", ",", "this_base", ",", "offset", ")", ")", ";", "reg", "=", "gen_rtx_REG", "(", "SImode", ",", "31", ")", ";", "if", "(", "fn", "==", "mips_save_reg", ")", "set", "=", "mips_frame_set", "(", "mem", ",", "reg", ")", ";", "else", "{", "set", "=", "gen_rtx_SET", "(", "reg", ",", "mem", ")", ";", "mips_add_cfa_restore", "(", "reg", ")", ";", "}", "XVECEXP", "(", "pattern", ",", "0", ",", "j", ")", "=", "set", ";", "}", "pattern", "=", "emit_insn", "(", "pattern", ")", ";", "if", "(", "fn", "==", "mips_save_reg", ")", "RTX_FRAME_RELATED_P", "(", "pattern", ")", "=", "1", ";", "*", "offset", "-=", "UNITS_PER_WORD", "*", "nregs", ";", "return", "true", ";", "}", ""], "natrual_language": ["Try", "to", "use", "a", "microMIPS", "LWM", "or", "SWM", "instruction", "to", "save", "or", "restore", "as", "many", "GPRs", "in", "*", "MASK", "as", "possible", ".", "*", "OFFSET", "is", "the", "offset", "from", "the", "stack", "pointer", "of", "the", "topmost", "save", "slot", ".", "Remove", "from", "*", "MASK", "all", "registers", "that", "were", "handled", "using", "LWM", "and", "SWM", ".", "Update", "*", "OFFSET", "so", "that", "it", "points", "to", "the", "first", "unused", "save", "slot", "."], "TS_V_token": ["mips", "0", "0xffff0000", "0xf", "4", "1", "0", "0xf", "8", "16", "30", "1", "0", "4", "1", "31", "31", "0", "1"], "File": "mips", "Func": "umips_build_save_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33279, "Length": 398} {"ground_truth": ["", "bool", "umips_load_store_pair_p", "(", "bool", "load_p", ",", "rtx", "*", "operands", ")", "{", "rtx", "reg1", ",", "reg2", ",", "mem1", ",", "mem2", ";", "if", "(", "load_p", ")", "{", "reg1", "=", "operands", "[", "0", "]", ";", "reg2", "=", "operands", "[", "2", "]", ";", "mem1", "=", "operands", "[", "1", "]", ";", "mem2", "=", "operands", "[", "3", "]", ";", "}", "else", "{", "reg1", "=", "operands", "[", "1", "]", ";", "reg2", "=", "operands", "[", "3", "]", ";", "mem1", "=", "operands", "[", "0", "]", ";", "mem2", "=", "operands", "[", "2", "]", ";", "}", "if", "(", "REGNO", "(", "reg2", ")", "==", "REGNO", "(", "reg1", ")", "+", "1", ")", "return", "umips_load_store_pair_p_1", "(", "load_p", ",", "false", ",", "reg1", ",", "mem1", ",", "mem2", ")", ";", "if", "(", "REGNO", "(", "reg1", ")", "==", "REGNO", "(", "reg2", ")", "+", "1", ")", "return", "umips_load_store_pair_p_1", "(", "load_p", ",", "true", ",", "reg2", ",", "mem2", ",", "mem1", ")", ";", "return", "false", ";", "}", ""], "natrual_language": ["OPERANDS", "describes", "the", "operands", "to", "a", "pair", "of", "SETs", ",", "in", "the", "order", "dest1", ",", "src1", ",", "dest2", ",", "src2", ".", "Return", "true", "if", "the", "operands", "can", "be", "used", "in", "an", "LWP", "or", "SWP", "instruction", ";", "LOAD_P", "says", "which", "."], "TS_V_token": ["mips", "0", "2", "1", "3", "1", "3", "0", "2", "1", "1"], "File": "mips", "Func": "umips_load_store_pair_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33280, "Length": 145} {"ground_truth": ["", "static", "bool", "umips_load_store_pair_p_1", "(", "bool", "load_p", ",", "bool", "swap_p", ",", "rtx", "first_reg", ",", "rtx", "mem1", ",", "rtx", "mem2", ")", "{", "rtx", "base1", ",", "base2", ";", "HOST_WIDE_INT", "offset1", ",", "offset2", ";", "if", "(", "!", "MEM_P", "(", "mem1", ")", "||", "!", "MEM_P", "(", "mem2", ")", ")", "return", "false", ";", "mips_split_plus", "(", "XEXP", "(", "mem1", ",", "0", ")", ",", "&", "base1", ",", "&", "offset1", ")", ";", "mips_split_plus", "(", "XEXP", "(", "mem2", ",", "0", ")", ",", "&", "base2", ",", "&", "offset2", ")", ";", "if", "(", "!", "REG_P", "(", "base1", ")", "||", "!", "rtx_equal_p", "(", "base1", ",", "base2", ")", ")", "return", "false", ";", "if", "(", "load_p", "&&", "REGNO", "(", "first_reg", ")", "==", "REGNO", "(", "base1", ")", ")", "return", "false", ";", "if", "(", "load_p", "&&", "swap_p", "&&", "REGNO", "(", "first_reg", ")", "+", "1", "==", "REGNO", "(", "base1", ")", ")", "return", "false", ";", "if", "(", "offset2", "!=", "offset1", "+", "4", ")", "return", "false", ";", "if", "(", "!", "UMIPS_12BIT_OFFSET_P", "(", "offset1", ")", ")", "return", "false", ";", "return", "true", ";", "}", ""], "natrual_language": ["Return", "true", "if", "MEM1", "and", "MEM2", "use", "the", "same", "base", "register", ",", "and", "the", "offset", "of", "MEM2", "equals", "the", "offset", "of", "MEM1", "plus", "4", ".", "FIRST_REG", "is", "the", "register", "into", "(", "from", ")", "which", "the", "contents", "of", "MEM1", "will", "be", "loaded", "(", "stored", ")", ",", "depending", "on", "the", "value", "of", "LOAD_P", ".", "SWAP_P", "is", "true", "when", "the", "1st", "and", "2nd", "instructions", "are", "swapped", "."], "TS_V_token": ["mips", "0", "0", "1", "4"], "File": "mips", "Func": "umips_load_store_pair_p_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33281, "Length": 162} {"ground_truth": ["", "bool", "umips_movep_target_p", "(", "rtx", "reg1", ",", "rtx", "reg2", ")", "{", "int", "regno1", ",", "regno2", ",", "pair", ";", "unsigned", "int", "i", ";", "static", "const", "int", "match", "[", "8", "]", "=", "{", "0x00000060", ",", "0x000000a0", ",", "0x000000c0", ",", "0x00200010", ",", "0x00400010", ",", "0x00000030", ",", "0x00000050", ",", "0x00000090", "}", ";", "if", "(", "!", "REG_P", "(", "reg1", ")", "||", "!", "REG_P", "(", "reg2", ")", ")", "return", "false", ";", "regno1", "=", "REGNO", "(", "reg1", ")", ";", "regno2", "=", "REGNO", "(", "reg2", ")", ";", "if", "(", "!", "GP_REG_P", "(", "regno1", ")", "||", "!", "GP_REG_P", "(", "regno2", ")", ")", "return", "false", ";", "pair", "=", "(", "1", "<<", "regno1", ")", "|", "(", "1", "<<", "regno2", ")", ";", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "match", ")", ";", "i", "++", ")", "if", "(", "pair", "==", "match", "[", "i", "]", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "REG1", "and", "REG2", "match", "the", "criteria", "for", "a", "movep", "insn", "."], "TS_V_token": ["mips", "8", "0x00000060", "0x000000a0", "0x000000c0", "0x00200010", "0x00400010", "0x00000030", "0x00000050", "0x00000090", "1", "1", "0"], "File": "mips", "Func": "umips_movep_target_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33282, "Length": 141} {"ground_truth": ["", "void", "umips_output_load_store_pair", "(", "bool", "load_p", ",", "rtx", "*", "operands", ")", "{", "rtx", "reg1", ",", "reg2", ",", "mem1", ",", "mem2", ";", "if", "(", "load_p", ")", "{", "reg1", "=", "operands", "[", "0", "]", ";", "reg2", "=", "operands", "[", "2", "]", ";", "mem1", "=", "operands", "[", "1", "]", ";", "mem2", "=", "operands", "[", "3", "]", ";", "}", "else", "{", "reg1", "=", "operands", "[", "1", "]", ";", "reg2", "=", "operands", "[", "3", "]", ";", "mem1", "=", "operands", "[", "0", "]", ";", "mem2", "=", "operands", "[", "2", "]", ";", "}", "if", "(", "REGNO", "(", "reg2", ")", "==", "REGNO", "(", "reg1", ")", "+", "1", ")", "{", "umips_output_load_store_pair_1", "(", "load_p", ",", "reg1", ",", "mem1", ")", ";", "return", ";", "}", "gcc_assert", "(", "REGNO", "(", "reg1", ")", "==", "REGNO", "(", "reg2", ")", "+", "1", ")", ";", "umips_output_load_store_pair_1", "(", "load_p", ",", "reg2", ",", "mem2", ")", ";", "}", ""], "natrual_language": ["Output", "the", "assembly", "instruction", "for", "a", "microMIPS", "LWP", "or", "SWP", "instruction", ".", "LOAD_P", "and", "OPERANDS", "are", "as", "for", "umips_load_store_pair_p", "."], "TS_V_token": ["mips", "0", "2", "1", "3", "1", "3", "0", "2", "1", "1"], "File": "mips", "Func": "umips_output_load_store_pair", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33283, "Length": 137} {"ground_truth": ["", "static", "void", "umips_output_load_store_pair_1", "(", "bool", "load_p", ",", "rtx", "reg", ",", "rtx", "mem", ")", "{", "rtx", "ops", "[", "]", "=", "{", "reg", ",", "mem", "}", ";", "if", "(", "load_p", ")", "output_asm_insn", "(", "\"lwp\\t%0,%1\"", ",", "ops", ")", ";", "else", "output_asm_insn", "(", "\"swp\\t%0,%1\"", ",", "ops", ")", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "instruction", "for", "a", "microMIPS", "LWP", "or", "SWP", "in", "which", "the", "first", "register", "is", "REG", "and", "the", "first", "memory", "slot", "is", "MEM", ".", "LOAD_P", "is", "true", "for", "LWP", "."], "TS_V_token": ["mips", "\"lwp\\t%0,%1\"", "\"swp\\t%0,%1\""], "File": "mips", "Func": "umips_output_load_store_pair_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33284, "Length": 45} {"ground_truth": ["", "const", "char", "*", "umips_output_save_restore", "(", "bool", "save_p", ",", "rtx", "pattern", ")", "{", "static", "char", "buffer", "[", "300", "]", ";", "char", "*", "s", ";", "int", "n", ";", "HOST_WIDE_INT", "offset", ";", "rtx", "base", ",", "mem", ",", "set", ",", "last_set", ",", "last_reg", ";", "gcc_assert", "(", "umips_save_restore_pattern_p", "(", "save_p", ",", "pattern", ")", ")", ";", "s", "=", "strcpy", "(", "buffer", ",", "save_p", "?", "\"swm\\t\"", ":", "\"lwm\\t\"", ")", ";", "s", "+=", "strlen", "(", "s", ")", ";", "n", "=", "XVECLEN", "(", "pattern", ",", "0", ")", ";", "set", "=", "XVECEXP", "(", "pattern", ",", "0", ",", "0", ")", ";", "mem", "=", "save_p", "?", "SET_DEST", "(", "set", ")", ":", "SET_SRC", "(", "set", ")", ";", "mips_split_plus", "(", "XEXP", "(", "mem", ",", "0", ")", ",", "&", "base", ",", "&", "offset", ")", ";", "last_set", "=", "XVECEXP", "(", "pattern", ",", "0", ",", "n", "-", "1", ")", ";", "last_reg", "=", "save_p", "?", "SET_SRC", "(", "last_set", ")", ":", "SET_DEST", "(", "last_set", ")", ";", "if", "(", "REGNO", "(", "last_reg", ")", "==", "31", ")", "n", "--", ";", "gcc_assert", "(", "n", "<=", "9", ")", ";", "if", "(", "n", "==", "0", ")", ";", "else", "if", "(", "n", "==", "1", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%s,\"", ",", "reg_names", "[", "16", "]", ")", ";", "else", "if", "(", "n", "<", "9", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%s-%s,\"", ",", "reg_names", "[", "16", "]", ",", "reg_names", "[", "15", "+", "n", "]", ")", ";", "else", "if", "(", "n", "==", "9", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%s-%s,%s,\"", ",", "reg_names", "[", "16", "]", ",", "reg_names", "[", "23", "]", ",", "reg_names", "[", "30", "]", ")", ";", "if", "(", "REGNO", "(", "last_reg", ")", "==", "31", ")", "s", "+=", "sprintf", "(", "s", ",", "\"%s,\"", ",", "reg_names", "[", "31", "]", ")", ";", "s", "+=", "sprintf", "(", "s", ",", "\"%d(%s)\"", ",", "(", "int", ")", "offset", ",", "reg_names", "[", "REGNO", "(", "base", ")", "]", ")", ";", "return", "buffer", ";", "}", ""], "natrual_language": ["Return", "the", "assembly", "instruction", "for", "microMIPS", "LWM", "or", "SWM", ".", "SAVE_P", "and", "PATTERN", "are", "as", "for", "umips_save_restore_pattern_p", "."], "TS_V_token": ["mips", "300", "\"swm\\t\"", "\"lwm\\t\"", "0", "0", "0", "0", "0", "1", "31", "9", "0", "1", "\"%s,\"", "16", "9", "\"%s-%s,\"", "16", "15", "9", "\"%s-%s,%s,\"", "16", "23", "30", "31", "\"%s,\"", "31", "\"%d(%s)\""], "File": "mips", "Func": "umips_output_save_restore", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33285, "Length": 302} {"ground_truth": ["", "bool", "umips_save_restore_pattern_p", "(", "bool", "save_p", ",", "rtx", "pattern", ")", "{", "int", "n", ";", "unsigned", "int", "i", ";", "HOST_WIDE_INT", "first_offset", "=", "0", ";", "rtx", "first_base", "=", "0", ";", "unsigned", "int", "regmask", "=", "0", ";", "for", "(", "n", "=", "0", ";", "n", "<", "XVECLEN", "(", "pattern", ",", "0", ")", ";", "n", "++", ")", "{", "rtx", "set", ",", "reg", ",", "mem", ",", "this_base", ";", "HOST_WIDE_INT", "this_offset", ";", "set", "=", "XVECEXP", "(", "pattern", ",", "0", ",", "n", ")", ";", "if", "(", "GET_CODE", "(", "set", ")", "!=", "SET", ")", "return", "false", ";", "mem", "=", "save_p", "?", "SET_DEST", "(", "set", ")", ":", "SET_SRC", "(", "set", ")", ";", "if", "(", "!", "MEM_P", "(", "mem", ")", "||", "MEM_VOLATILE_P", "(", "mem", ")", ")", "return", "false", ";", "mips_split_plus", "(", "XEXP", "(", "mem", ",", "0", ")", ",", "&", "this_base", ",", "&", "this_offset", ")", ";", "if", "(", "!", "REG_P", "(", "this_base", ")", ")", "return", "false", ";", "if", "(", "n", "==", "0", ")", "{", "if", "(", "!", "UMIPS_12BIT_OFFSET_P", "(", "this_offset", ")", ")", "return", "false", ";", "first_base", "=", "this_base", ";", "first_offset", "=", "this_offset", ";", "}", "else", "{", "if", "(", "REGNO", "(", "this_base", ")", "!=", "REGNO", "(", "first_base", ")", "||", "this_offset", "!=", "first_offset", "+", "UNITS_PER_WORD", "*", "n", ")", "return", "false", ";", "}", "reg", "=", "save_p", "?", "SET_SRC", "(", "set", ")", ":", "SET_DEST", "(", "set", ")", ";", "if", "(", "!", "REG_P", "(", "reg", ")", ")", "return", "false", ";", "regmask", "|=", "1", "<<", "REGNO", "(", "reg", ")", ";", "}", "for", "(", "i", "=", "0", ";", "i", "<", "ARRAY_SIZE", "(", "umips_swm_mask", ")", ";", "i", "++", ")", "if", "(", "regmask", "==", "umips_swm_mask", "[", "i", "]", ")", "return", "true", ";", "return", "false", ";", "}", ""], "natrual_language": ["Return", "true", "if", "PATTERN", "matches", "the", "kind", "of", "instruction", "generated", "by", "umips_build_save_restore", ".", "SAVE_P", "is", "true", "for", "store", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0"], "File": "mips", "Func": "umips_save_restore_pattern_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33286, "Length": 264} {"ground_truth": ["", "static", "void", "vr4130_align_insns", "(", "void", ")", "{", "struct", "mips_sim", "state", ";", "rtx_insn", "*", "insn", ",", "*", "subinsn", ",", "*", "last", ",", "*", "last2", ",", "*", "next", ";", "bool", "aligned_p", ";", "dfa_start", "(", ")", ";", "last", "=", "0", ";", "last2", "=", "0", ";", "aligned_p", "=", "true", ";", "mips_sim_init", "(", "&", "state", ",", "alloca", "(", "state_size", "(", ")", ")", ")", ";", "for", "(", "insn", "=", "get_insns", "(", ")", ";", "insn", "!=", "0", ";", "insn", "=", "next", ")", "{", "unsigned", "int", "length", ";", "next", "=", "NEXT_INSN", "(", "insn", ")", ";", "vr4130_avoid_branch_rt_conflict", "(", "insn", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", ">", "0", "&&", "USEFUL_INSN_P", "(", "insn", ")", ")", "FOR_EACH_SUBINSN", "(", "subinsn", ",", "insn", ")", "{", "mips_sim_wait_insn", "(", "&", "state", ",", "subinsn", ")", ";", "if", "(", "state", ".", "insns_left", "!=", "state", ".", "issue_rate", "&&", "!", "CALL_P", "(", "subinsn", ")", ")", "{", "if", "(", "subinsn", "==", "SEQ_BEGIN", "(", "insn", ")", "&&", "aligned_p", ")", "{", "gcc_assert", "(", "last2", ")", ";", "emit_insn_after", "(", "gen_nop", "(", ")", ",", "last2", ")", ";", "aligned_p", "=", "false", ";", "}", "else", "if", "(", "subinsn", "!=", "SEQ_BEGIN", "(", "insn", ")", "&&", "!", "aligned_p", ")", "{", "gcc_assert", "(", "last", ")", ";", "emit_insn_after", "(", "gen_nop", "(", ")", ",", "last", ")", ";", "aligned_p", "=", "true", ";", "}", "}", "mips_sim_issue_insn", "(", "&", "state", ",", "subinsn", ")", ";", "}", "mips_sim_finish_insn", "(", "&", "state", ",", "insn", ")", ";", "length", "=", "get_attr_length", "(", "insn", ")", ";", "if", "(", "length", ">", "0", ")", "{", "if", "(", "NONJUMP_INSN_P", "(", "SEQ_BEGIN", "(", "insn", ")", ")", "&&", "(", "recog_memoized", "(", "insn", ")", "<", "0", "||", "length", ">=", "8", ")", ")", "{", "next", "=", "emit_insn_after", "(", "gen_align", "(", "GEN_INT", "(", "3", ")", ")", ",", "insn", ")", ";", "next", "=", "NEXT_INSN", "(", "next", ")", ";", "mips_sim_next_cycle", "(", "&", "state", ")", ";", "aligned_p", "=", "true", ";", "}", "else", "if", "(", "length", "&", "4", ")", "aligned_p", "=", "!", "aligned_p", ";", "last2", "=", "last", ";", "last", "=", "insn", ";", "}", "if", "(", "LABEL_P", "(", "insn", ")", "&&", "label_to_alignment", "(", "insn", ")", ".", "levels", "[", "0", "]", ".", "log", ">=", "3", ")", "aligned_p", "=", "true", ";", "}", "dfa_finish", "(", ")", ";", "}", ""], "natrual_language": ["Implement", "-mvr4130-align", ".", "Go", "through", "each", "basic", "block", "and", "simulate", "the", "processor", "pipeline", ".", "If", "we", "find", "that", "a", "pair", "of", "instructions", "could", "execute", "in", "parallel", ",", "and", "the", "first", "of", "those", "instruction", "is", "not", "8-byte", "aligned", ",", "insert", "a", "nop", "to", "make", "it", "aligned", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0", "0", "8", "3", "4", "0", "3"], "File": "mips", "Func": "vr4130_align_insns", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33287, "Length": 347} {"ground_truth": ["", "static", "void", "vr4130_avoid_branch_rt_conflict", "(", "rtx_insn", "*", "insn", ")", "{", "rtx_insn", "*", "first", ",", "*", "second", ";", "first", "=", "SEQ_BEGIN", "(", "insn", ")", ";", "second", "=", "SEQ_END", "(", "insn", ")", ";", "if", "(", "JUMP_P", "(", "first", ")", "&&", "NONJUMP_INSN_P", "(", "second", ")", "&&", "GET_CODE", "(", "PATTERN", "(", "first", ")", ")", "==", "SET", "&&", "GET_CODE", "(", "SET_DEST", "(", "PATTERN", "(", "first", ")", ")", ")", "==", "PC", "&&", "GET_CODE", "(", "SET_SRC", "(", "PATTERN", "(", "first", ")", ")", ")", "==", "IF_THEN_ELSE", ")", "{", "rtx", "cond", "=", "XEXP", "(", "SET_SRC", "(", "PATTERN", "(", "first", ")", ")", ",", "0", ")", ";", "if", "(", "(", "GET_CODE", "(", "cond", ")", "==", "EQ", "||", "GET_CODE", "(", "cond", ")", "==", "NE", ")", "&&", "REG_P", "(", "XEXP", "(", "cond", ",", "0", ")", ")", "&&", "REG_P", "(", "XEXP", "(", "cond", ",", "1", ")", ")", "&&", "reg_referenced_p", "(", "XEXP", "(", "cond", ",", "1", ")", ",", "PATTERN", "(", "second", ")", ")", "&&", "!", "reg_referenced_p", "(", "XEXP", "(", "cond", ",", "0", ")", ",", "PATTERN", "(", "second", ")", ")", ")", "{", "rtx", "tmp", "=", "XEXP", "(", "cond", ",", "0", ")", ";", "XEXP", "(", "cond", ",", "0", ")", "=", "XEXP", "(", "cond", ",", "1", ")", ";", "XEXP", "(", "cond", ",", "1", ")", "=", "tmp", ";", "}", "}", "}", ""], "natrual_language": ["The", "VR4130", "pipeline", "issues", "aligned", "pairs", "of", "instructions", "together", ",", "but", "it", "stalls", "the", "second", "instruction", "if", "it", "depends", "on", "the", "first", ".", "In", "order", "to", "cut", "down", "the", "amount", "of", "logic", "required", ",", "this", "dependence", "check", "is", "not", "based", "on", "a", "full", "instruction", "decode", ".", "Instead", ",", "any", "non-SPECIAL", "instruction", "is", "assumed", "to", "modify", "the", "register", "specified", "by", "bits", "20-16", "(", "which", "is", "usually", "the", "``", "rt", "''", "field", ")", ".", "In", "beq", ",", "beql", ",", "bne", "and", "bnel", "instructions", ",", "the", "rt", "field", "is", "actually", "an", "input", ",", "so", "we", "can", "end", "up", "with", "a", "false", "dependence", "between", "the", "branch", "and", "its", "delay", "slot", ".", "If", "this", "situation", "occurs", "in", "instruction", "INSN", ",", "try", "to", "avoid", "it", "by", "swapping", "rs", "and", "rt", "."], "TS_V_token": ["mips", "0", "0", "1", "1", "0", "0", "0", "1", "1"], "File": "mips", "Func": "vr4130_avoid_branch_rt_conflict", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33288, "Length": 201} {"ground_truth": ["", "static", "void", "vr4130_reorder", "(", "rtx_insn", "*", "*", "ready", ",", "int", "nready", ")", "{", "if", "(", "vr4130_swap_insns_p", "(", "ready", "[", "nready", "-", "1", "]", ",", "ready", "[", "nready", "-", "2", "]", ")", ")", "mips_promote_ready", "(", "ready", ",", "nready", "-", "2", ",", "nready", "-", "1", ")", ";", "}", ""], "natrual_language": ["A", "TUNE_MIPS4130", "helper", "function", ".", "(", "READY", ",", "NREADY", ")", "describes", "a", "ready", "queue", "with", "at", "least", "two", "instructions", ".", "Swap", "the", "first", "two", "if", "vr4130_swap_insns_p", "says", "that", "it", "could", "be", "worthwhile", "."], "TS_V_token": ["mips", "1", "2", "2", "1"], "File": "mips", "Func": "vr4130_reorder", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33289, "Length": 46} {"ground_truth": ["", "static", "bool", "vr4130_swap_insns_p", "(", "rtx_insn", "*", "insn1", ",", "rtx_insn", "*", "insn2", ")", "{", "sd_iterator_def", "sd_it", ";", "dep_t", "dep", ";", "FOR_EACH_DEP", "(", "insn1", ",", "SD_LIST_FORW", ",", "sd_it", ",", "dep", ")", "if", "(", "DEP_TYPE", "(", "dep", ")", "==", "REG_DEP_ANTI", "&&", "INSN_PRIORITY", "(", "DEP_CON", "(", "dep", ")", ")", ">", "INSN_PRIORITY", "(", "insn2", ")", "&&", "recog_memoized", "(", "DEP_CON", "(", "dep", ")", ")", ">=", "0", "&&", "get_attr_vr4130_class", "(", "DEP_CON", "(", "dep", ")", ")", "==", "VR4130_CLASS_ALU", ")", "return", "false", ";", "if", "(", "vr4130_last_insn", "!=", "0", "&&", "recog_memoized", "(", "insn1", ")", ">=", "0", "&&", "recog_memoized", "(", "insn2", ")", ">=", "0", ")", "{", "enum", "attr_vr4130_class", "class1", "=", "get_attr_vr4130_class", "(", "insn1", ")", ";", "enum", "attr_vr4130_class", "class2", "=", "get_attr_vr4130_class", "(", "insn2", ")", ";", "if", "(", "class1", "!=", "class2", "||", "class1", "==", "VR4130_CLASS_ALU", ")", "{", "bool", "dep1_p", "=", "vr4130_true_reg_dependence_p", "(", "insn1", ")", ";", "bool", "dep2_p", "=", "vr4130_true_reg_dependence_p", "(", "insn2", ")", ";", "if", "(", "dep1_p", "!=", "dep2_p", ")", "return", "dep1_p", ";", "if", "(", "class1", "!=", "VR4130_CLASS_ALU", "&&", "recog_memoized", "(", "vr4130_last_insn", ")", ">=", "0", "&&", "class1", "==", "get_attr_vr4130_class", "(", "vr4130_last_insn", ")", ")", "return", "true", ";", "}", "}", "return", "false", ";", "}", ""], "natrual_language": ["A", "TUNE_MIPS4130", "helper", "function", ".", "Given", "that", "INSN1", "is", "at", "the", "head", "of", "the", "ready", "queue", "and", "that", "INSN2", "is", "the", "instruction", "after", "it", ",", "return", "true", "if", "it", "is", "worth", "promoting", "INSN2", "ahead", "of", "INSN1", ".", "Look", "for", "cases", "in", "which", "INSN1", "and", "INSN2", "can", "probably", "issue", "in", "parallel", ",", "but", "for", "which", "(", "INSN2", ",", "INSN1", ")", "should", "be", "less", "sensitive", "to", "instruction", "alignment", "than", "(", "INSN1", ",", "INSN2", ")", ".", "See", "4130.md", "for", "more", "details", "."], "TS_V_token": ["mips", "0", "0", "0", "0", "0"], "File": "mips", "Func": "vr4130_swap_insns_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33290, "Length": 178} {"ground_truth": ["", "static", "bool", "vr4130_true_reg_dependence_p", "(", "rtx", "insn", ")", "{", "note_stores", "(", "vr4130_last_insn", ",", "vr4130_true_reg_dependence_p_1", ",", "&", "insn", ")", ";", "return", "insn", "==", "0", ";", "}", ""], "natrual_language": ["Return", "true", "if", "there", "is", "true", "register", "dependence", "between", "vr4130_last_insn", "and", "INSN", "."], "TS_V_token": ["mips", "0"], "File": "mips", "Func": "vr4130_true_reg_dependence_p", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33291, "Length": 24} {"ground_truth": ["", "static", "void", "vr4130_true_reg_dependence_p_1", "(", "rtx", "x", ",", "const_rtx", "pat", "ATTRIBUTE_UNUSED", ",", "void", "*", "data", ")", "{", "rtx", "*", "insn_ptr", ";", "insn_ptr", "=", "(", "rtx", "*", ")", "data", ";", "if", "(", "REG_P", "(", "x", ")", "&&", "*", "insn_ptr", "!=", "0", "&&", "reg_referenced_p", "(", "x", ",", "PATTERN", "(", "*", "insn_ptr", ")", ")", ")", "*", "insn_ptr", "=", "0", ";", "}", ""], "natrual_language": ["A", "note_stores", "callback", "used", "by", "vr4130_true_reg_dependence_p", ".", "DATA", "points", "to", "an", "rtx", "that", "is", "initially", "an", "instruction", ".", "Nullify", "the", "rtx", "if", "the", "instruction", "uses", "the", "value", "of", "register", "X", "."], "TS_V_token": ["mips", "0", "0"], "File": "mips", "Func": "vr4130_true_reg_dependence_p_1", "Target": "mips", "Target_Clf": "CPU", "Compiler_Type": "GCC", "Idx": 33292, "Length": 57}