Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(545)

Delta Between Two Patch Sets: gcc/target.def

Issue 5752064: User directed Function Multiversioning via Function Overloading Base URL: svn+ssh://gcc.gnu.org/svn/gcc/trunk/gcc/
Left Patch Set: User directed Function Multiversioning via Function Overloading Created 11 years, 9 months ago
Right Patch Set: User directed Function Multiversioning via Function Overloading Created 11 years, 7 months ago
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
Left: Side by side diff | Download
Right: Side by side diff | Download
« no previous file with change/comment | « gcc/doc/tm.texi.in ('k') | gcc/testsuite/g++.dg/mv1.C » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
1 /* Target hook definitions. 1 /* Target hook definitions.
2 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010,
3 2011, 2012 3 2011, 2012
4 Free Software Foundation, Inc. 4 Free Software Foundation, Inc.
5 5
6 This program is free software; you can redistribute it and/or modify it 6 This program is free software; you can redistribute it and/or modify it
7 under the terms of the GNU General Public License as published by the 7 under the terms of the GNU General Public License as published by the
8 Free Software Foundation; either version 3, or (at your option) any 8 Free Software Foundation; either version 3, or (at your option) any
9 later version. 9 later version.
10 10
(...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after
419 (record_gcc_switches_section, 419 (record_gcc_switches_section,
420 "", 420 "",
421 const char *, ".GCC.command.line") 421 const char *, ".GCC.command.line")
422 422
423 /* Output the definition of a section anchor. */ 423 /* Output the definition of a section anchor. */
424 DEFHOOK 424 DEFHOOK
425 (output_anchor, 425 (output_anchor,
426 "", 426 "",
427 void, (rtx x), 427 void, (rtx x),
428 default_asm_output_anchor) 428 default_asm_output_anchor)
429
430 DEFHOOK
431 (output_ident,
432 "Output a string based on @var{name}, suitable for the @samp{#ident} \
433 directive, or the equivalent directive or pragma in non-C-family languages. \
434 If this hook is not defined, nothing is output for the @samp{#ident} \
435 directive.",
436 void, (const char *name),
437 hook_void_constcharptr)
429 438
430 /* Output a DTP-relative reference to a TLS symbol. */ 439 /* Output a DTP-relative reference to a TLS symbol. */
431 DEFHOOK 440 DEFHOOK
432 (output_dwarf_dtprel, 441 (output_dwarf_dtprel,
433 "", 442 "",
434 void, (FILE *file, int size, rtx x), 443 void, (FILE *file, int size, rtx x),
435 NULL) 444 NULL)
436 445
437 /* Some target machines need to postscan each insn after it is output. */ 446 /* Some target machines need to postscan each insn after it is output. */
438 DEFHOOK 447 DEFHOOK
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
671 (first_cycle_multipass_begin, 680 (first_cycle_multipass_begin,
672 "", 681 "",
673 void, (void *data, char *ready_try, int n_ready, bool first_cycle_insn_p), 682 void, (void *data, char *ready_try, int n_ready, bool first_cycle_insn_p),
674 NULL) 683 NULL)
675 684
676 /* This hook is called when multipass scheduling evaluates instruction INSN. 685 /* This hook is called when multipass scheduling evaluates instruction INSN.
677 DATA is a pointer to target-specific data that can be used to record effects 686 DATA is a pointer to target-specific data that can be used to record effects
678 of INSN on CPU that are not described in DFA. 687 of INSN on CPU that are not described in DFA.
679 READY_TRY and N_READY represent the current state of search in the 688 READY_TRY and N_READY represent the current state of search in the
680 optimization space. The target can filter out instructions that 689 optimization space. The target can filter out instructions that
681 should not be tried after issueing INSN by setting corresponding 690 should not be tried after issuing INSN by setting corresponding
682 elements in READY_TRY to non-zero. 691 elements in READY_TRY to non-zero.
683 INSN is the instruction being evaluated. 692 INSN is the instruction being evaluated.
684 PREV_DATA is a pointer to target-specific data corresponding 693 PREV_DATA is a pointer to target-specific data corresponding
685 to a state before issueing INSN. */ 694 to a state before issuing INSN. */
686 DEFHOOK 695 DEFHOOK
687 (first_cycle_multipass_issue, 696 (first_cycle_multipass_issue,
688 "", 697 "",
689 void, (void *data, char *ready_try, int n_ready, rtx insn, 698 void, (void *data, char *ready_try, int n_ready, rtx insn,
690 const void *prev_data), NULL) 699 const void *prev_data), NULL)
691 700
692 /* This hook is called when multipass scheduling backtracks from evaluation of 701 /* This hook is called when multipass scheduling backtracks from evaluation of
693 instruction corresponding to DATA. 702 instruction corresponding to DATA.
694 DATA is a pointer to target-specific data that stores the effects 703 DATA is a pointer to target-specific data that stores the effects
695 of instruction from which the algorithm backtracks on CPU that are not 704 of instruction from which the algorithm backtracks on CPU that are not
696 described in DFA. 705 described in DFA.
697 READY_TRY and N_READY represent the current state of search in the 706 READY_TRY and N_READY represent the current state of search in the
698 optimization space. The target can filter out instructions that 707 optimization space. The target can filter out instructions that
699 should not be tried after issueing INSN by setting corresponding 708 should not be tried after issuing INSN by setting corresponding
700 elements in READY_TRY to non-zero. */ 709 elements in READY_TRY to non-zero. */
701 DEFHOOK 710 DEFHOOK
702 (first_cycle_multipass_backtrack, 711 (first_cycle_multipass_backtrack,
703 "", 712 "",
704 void, (const void *data, char *ready_try, int n_ready), NULL) 713 void, (const void *data, char *ready_try, int n_ready), NULL)
705 714
706 /* This hook notifies the target about the result of the concluded current 715 /* This hook notifies the target about the result of the concluded current
707 round of multipass scheduling. 716 round of multipass scheduling.
708 DATA is a pointer. 717 DATA is a pointer.
709 If DATA is non-NULL it points to target-specific data used for multipass 718 If DATA is non-NULL it points to target-specific data used for multipass
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
954 default_builtin_vectorized_function) 963 default_builtin_vectorized_function)
955 964
956 /* Returns a function declaration for a builtin that realizes the 965 /* Returns a function declaration for a builtin that realizes the
957 vector conversion, or NULL_TREE if not available. */ 966 vector conversion, or NULL_TREE if not available. */
958 DEFHOOK 967 DEFHOOK
959 (builtin_conversion, 968 (builtin_conversion,
960 "", 969 "",
961 tree, (unsigned code, tree dest_type, tree src_type), 970 tree, (unsigned code, tree dest_type, tree src_type),
962 default_builtin_vectorized_conversion) 971 default_builtin_vectorized_conversion)
963 972
964 /* Target builtin that implements vector widening multiplication.
965 builtin_mul_widen_eve computes the element-by-element products
966 for the even elements, and builtin_mul_widen_odd computes the
967 element-by-element products for the odd elements. */
968 DEFHOOK
969 (builtin_mul_widen_even,
970 "",
971 tree, (tree x), NULL)
972
973 DEFHOOK
974 (builtin_mul_widen_odd,
975 "",
976 tree, (tree x), NULL)
977
978 /* Cost of different vector/scalar statements in vectorization cost 973 /* Cost of different vector/scalar statements in vectorization cost
979 model. In case of misaligned vector loads and stores the cost depends 974 model. In case of misaligned vector loads and stores the cost depends
980 on the data type and misalignment value. */ 975 on the data type and misalignment value. */
981 DEFHOOK 976 DEFHOOK
982 (builtin_vectorization_cost, 977 (builtin_vectorization_cost,
983 "", 978 "",
984 int, (enum vect_cost_for_stmt type_of_cost, tree vectype, int misalign), 979 int, (enum vect_cost_for_stmt type_of_cost, tree vectype, int misalign),
985 default_builtin_vectorization_cost) 980 default_builtin_vectorization_cost)
986 981
987 /* Return true if vector alignment is reachable (by peeling N 982 /* Return true if vector alignment is reachable (by peeling N
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
1047 default_autovectorize_vector_sizes) 1042 default_autovectorize_vector_sizes)
1048 1043
1049 /* Target builtin that implements vector gather operation. */ 1044 /* Target builtin that implements vector gather operation. */
1050 DEFHOOK 1045 DEFHOOK
1051 (builtin_gather, 1046 (builtin_gather,
1052 "", 1047 "",
1053 tree, 1048 tree,
1054 (const_tree mem_vectype, const_tree index_type, int scale), 1049 (const_tree mem_vectype, const_tree index_type, int scale),
1055 NULL) 1050 NULL)
1056 1051
1052 /* Target function to initialize the cost model for a loop or block. */
1053 DEFHOOK
1054 (init_cost,
1055 "This hook should initialize target-specific data structures in preparation "
1056 "for modeling the costs of vectorizing a loop or basic block. The default "
1057 "allocates three unsigned integers for accumulating costs for the prologue, "
1058 "body, and epilogue of the loop or basic block. If @var{loop_info} is "
1059 "non-NULL, it identifies the loop being vectorized; otherwise a single block "
1060 "is being vectorized.",
1061 void *,
1062 (struct loop *loop_info),
1063 default_init_cost)
1064
1065 /* Target function to record N statements of the given kind using the
1066 given vector type within the cost model data for the current loop or
1067 block. */
1068 DEFHOOK
1069 (add_stmt_cost,
1070 "This hook should update the target-specific @var{data} in response to "
1071 "adding @var{count} copies of the given @var{kind} of statement to a "
1072 "loop or basic block. The default adds the builtin vectorizer cost for "
1073 "the copies of the statement to the accumulator specified by @var{where}, "
1074 "(the prologue, body, or epilogue) and returns the amount added. The "
1075 "return value should be viewed as a tentative cost that may later be "
1076 "revised.",
1077 unsigned,
1078 (void *data, int count, enum vect_cost_for_stmt kind,
1079 struct _stmt_vec_info *stmt_info, int misalign,
1080 enum vect_cost_model_location where),
1081 default_add_stmt_cost)
1082
1083 /* Target function to calculate the total cost of the current vectorized
1084 loop or block. */
1085 DEFHOOK
1086 (finish_cost,
1087 "This hook should complete calculations of the cost of vectorizing a loop "
1088 "or basic block based on @var{data}, and return the prologue, body, and "
1089 "epilogue costs as unsigned integers. The default returns the value of "
1090 "the three accumulators.",
1091 void,
1092 (void *data, unsigned *prologue_cost, unsigned *body_cost,
1093 unsigned *epilogue_cost),
1094 default_finish_cost)
1095
1096 /* Function to delete target-specific cost modeling data. */
1097 DEFHOOK
1098 (destroy_cost_data,
1099 "This hook should release @var{data} and any related data structures "
1100 "allocated by TARGET_VECTORIZE_INIT_COST. The default releases the "
1101 "accumulator.",
1102 void,
1103 (void *data),
1104 default_destroy_cost_data)
1105
1057 HOOK_VECTOR_END (vectorize) 1106 HOOK_VECTOR_END (vectorize)
1058 1107
1059 #undef HOOK_PREFIX 1108 #undef HOOK_PREFIX
1060 #define HOOK_PREFIX "TARGET_" 1109 #define HOOK_PREFIX "TARGET_"
1061 1110
1062 /* Allow target specific overriding of option settings after options have 1111 /* Allow target specific overriding of option settings after options have
1063 been changed by an attribute or pragma or when it is reset at the 1112 been changed by an attribute or pragma or when it is reset at the
1064 end of the code affected by an attribute or pragma. */ 1113 end of the code affected by an attribute or pragma. */
1065 DEFHOOK 1114 DEFHOOK
1066 (override_options_after_change, 1115 (override_options_after_change,
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
1242 "", 1291 "",
1243 tree, (unsigned int /*location_t*/ loc, tree fndecl, void *arglist), NULL) 1292 tree, (unsigned int /*location_t*/ loc, tree fndecl, void *arglist), NULL)
1244 1293
1245 /* Fold a target-specific builtin. */ 1294 /* Fold a target-specific builtin. */
1246 DEFHOOK 1295 DEFHOOK
1247 (fold_builtin, 1296 (fold_builtin,
1248 "", 1297 "",
1249 tree, (tree fndecl, int n_args, tree *argp, bool ignore), 1298 tree, (tree fndecl, int n_args, tree *argp, bool ignore),
1250 hook_tree_tree_int_treep_bool_null) 1299 hook_tree_tree_int_treep_bool_null)
1251 1300
1252 /* Target hook to generate the dispatching code for calls to multi-versioned
1253 functions. DISPATCH_DECL is the function that will have the dispatching
1254 logic. FNDECLS are the list of choices for dispatch and EMPTY_BB is the
1255 basic block in DISPATCH_DECL which will contain the code. */
1256 DEFHOOK
1257 (dispatch_version,
1258 "",
1259 int, (tree dispatch_decl, void *fndecls, basic_block *empty_bb), NULL)
1260
1261 /* Target hook to compare the priority of target features in function DECL1 1301 /* Target hook to compare the priority of target features in function DECL1
1262 and DECL2. It returns positive value if DECL1 is higher priority, 1302 and DECL2. It returns positive value if DECL1 is higher priority,
1263 negative value if DECL2 is higher priority and 0 if they are the 1303 negative value if DECL2 is higher priority and 0 if they are the
1264 same. */ 1304 same. */
1265 DEFHOOK 1305 DEFHOOK
1266 (compare_versions, 1306 (compare_version_priority,
1267 "", 1307 "",
1268 int, (tree decl1, tree decl2), NULL) 1308 int, (tree decl1, tree decl2), NULL)
1309
1310 /* Target hook to get the new assembler name of DECL which is a function
1311 version. */
1312
1313 DEFHOOK
1314 (set_version_assembler_name,
1315 "",
1316 void, (tree decl), NULL)
1317
1318 /* Target hook to generate the dispatcher body for a function version
1319 dispatcher ARG, which is a cgraph_node pointer. */
1320
1321 DEFHOOK
1322 (generate_version_dispatcher_body,
1323 "",
1324 tree, (void *arg), NULL)·
1325
1326 /* Target hook to generate a function version dispatcher DECL for the list
1327 of function versions in arglist, which is a vector of decls. */
1328
1329 DEFHOOK
1330 (get_function_versions_dispatcher,
1331 "",
1332 tree, (void *arglist), NULL)
1269 1333
1270 /* Returns a code for a target-specific builtin that implements 1334 /* Returns a code for a target-specific builtin that implements
1271 reciprocal of the function, or NULL_TREE if not available. */ 1335 reciprocal of the function, or NULL_TREE if not available. */
1272 DEFHOOK 1336 DEFHOOK
1273 (builtin_reciprocal, 1337 (builtin_reciprocal,
1274 "", 1338 "",
1275 tree, (unsigned fn, bool md_fn, bool sqrt), 1339 tree, (unsigned fn, bool md_fn, bool sqrt),
1276 default_builtin_reciprocal) 1340 default_builtin_reciprocal)
1277 1341
1278 /* For a vendor-specific TYPE, return a pointer to a statically-allocated 1342 /* For a vendor-specific TYPE, return a pointer to a statically-allocated
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after
1625 default_scalar_mode_supported_p) 1689 default_scalar_mode_supported_p)
1626 1690
1627 /* Similarly for vector modes. "Supported" here is less strict. At 1691 /* Similarly for vector modes. "Supported" here is less strict. At
1628 least some operations are supported; need to check optabs or builtins 1692 least some operations are supported; need to check optabs or builtins
1629 for further details. */ 1693 for further details. */
1630 DEFHOOK 1694 DEFHOOK
1631 (vector_mode_supported_p, 1695 (vector_mode_supported_p,
1632 "", 1696 "",
1633 bool, (enum machine_mode mode), 1697 bool, (enum machine_mode mode),
1634 hook_bool_mode_false) 1698 hook_bool_mode_false)
1699
1700 DEFHOOK
1701 (vector_alignment,
1702 "This hook can be used to define the alignment for a vector of type\n\
1703 @var{type}, in order to comply with a platform ABI. The default is to\n\
1704 require natural alignment for vector types. The alignment returned by\n\
1705 this hook must be a power-of-two multiple of the default alignment of\n\
1706 the vector element type.",
1707 HOST_WIDE_INT, (const_tree type),
1708 default_vector_alignment)
1635 1709
1636 /* True if we should try to use a scalar mode to represent an array, 1710 /* True if we should try to use a scalar mode to represent an array,
1637 overriding the usual MAX_FIXED_MODE limit. */ 1711 overriding the usual MAX_FIXED_MODE limit. */
1638 DEFHOOK 1712 DEFHOOK
1639 (array_mode_supported_p, 1713 (array_mode_supported_p,
1640 "Return true if GCC should try to use a scalar mode to store an array\n\ 1714 "Return true if GCC should try to use a scalar mode to store an array\n\
1641 of @var{nelems} elements, given that each element has mode @var{mode}.\n\ 1715 of @var{nelems} elements, given that each element has mode @var{mode}.\n\
1642 Returning true here overrides the usual @code{MAX_FIXED_MODE} limit\n\ 1716 Returning true here overrides the usual @code{MAX_FIXED_MODE} limit\n\
1643 and allows GCC to use any defined integer mode.\n\ 1717 and allows GCC to use any defined integer mode.\n\
1644 \n\ 1718 \n\
(...skipping 639 matching lines...) Expand 10 before | Expand all | Expand 10 after
2284 2358
2285 /* Convert EXPR to TYPE, if target-specific types with special conversion 2359 /* Convert EXPR to TYPE, if target-specific types with special conversion
2286 rules are involved. Return the converted expression, or NULL to apply 2360 rules are involved. Return the converted expression, or NULL to apply
2287 the standard conversion rules. */ 2361 the standard conversion rules. */
2288 DEFHOOK 2362 DEFHOOK
2289 (convert_to_type, 2363 (convert_to_type,
2290 "", 2364 "",
2291 tree, (tree type, tree expr), 2365 tree, (tree type, tree expr),
2292 hook_tree_tree_tree_null) 2366 hook_tree_tree_tree_null)
2293 2367
2368 /* True if a structure, union or array with MODE containing FIELD should
2369 be accessed using BLKmode. */
2370 DEFHOOK
2371 (member_type_forces_blk,
2372 "",
2373 bool, (const_tree field, enum machine_mode mode),
2374 default_member_type_forces_blk)
2375
2294 /* Return the class for a secondary reload, and fill in extra information. */ 2376 /* Return the class for a secondary reload, and fill in extra information. */
2295 DEFHOOK 2377 DEFHOOK
2296 (secondary_reload, 2378 (secondary_reload,
2297 "", 2379 "",
2298 reg_class_t, 2380 reg_class_t,
2299 (bool in_p, rtx x, reg_class_t reload_class, enum machine_mode reload_mode, 2381 (bool in_p, rtx x, reg_class_t reload_class, enum machine_mode reload_mode,
2300 secondary_reload_info *sri), 2382 secondary_reload_info *sri),
2301 default_secondary_reload) 2383 default_secondary_reload)
2302 2384
2303 /* Given an rtx X being reloaded into a reg required to be in class CLASS, 2385 /* Given an rtx X being reloaded into a reg required to be in class CLASS,
(...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after
2649 bool, (tree args, tree pop_target), 2731 bool, (tree args, tree pop_target),
2650 default_target_option_pragma_parse) 2732 default_target_option_pragma_parse)
2651 2733
2652 /* Do option overrides for the target. */ 2734 /* Do option overrides for the target. */
2653 DEFHOOK 2735 DEFHOOK
2654 (override, 2736 (override,
2655 "", 2737 "",
2656 void, (void), 2738 void, (void),
2657 hook_void_void) 2739 hook_void_void)
2658 2740
2741 /* Returns true if DECL1 and DECL2 are versions of the same function. */
2742
2743 DEFHOOK
2744 (function_versions,
2745 "",
2746 bool, (tree decl1, tree decl2),
2747 hook_bool_tree_tree_false)
2748
2659 /* Function to determine if one function can inline another function. */ 2749 /* Function to determine if one function can inline another function. */
2660 #undef HOOK_PREFIX 2750 #undef HOOK_PREFIX
2661 #define HOOK_PREFIX "TARGET_" 2751 #define HOOK_PREFIX "TARGET_"
2662 DEFHOOK 2752 DEFHOOK
2663 (can_inline_p, 2753 (can_inline_p,
2664 "", 2754 "",
2665 bool, (tree caller, tree callee), 2755 bool, (tree caller, tree callee),
2666 default_target_can_inline_p) 2756 default_target_can_inline_p)
2667 2757
2668 HOOK_VECTOR_END (target_option) 2758 HOOK_VECTOR_END (target_option)
2669 2759
2670 /* For targets that need to mark extra registers as live on entry to 2760 /* For targets that need to mark extra registers as live on entry to
2671 the function, they should define this target hook and set their 2761 the function, they should define this target hook and set their
2672 bits in the bitmap passed in. */ 2762 bits in the bitmap passed in. */
2673 DEFHOOK 2763 DEFHOOK
2674 (extra_live_on_entry, 2764 (extra_live_on_entry,
2675 "", 2765 "",
2676 void, (bitmap regs), 2766 void, (bitmap regs),
2677 hook_void_bitmap) 2767 hook_void_bitmap)
2678 2768
2679 /* Fill in additional registers set up by prologue into a regset. */ 2769 /* Fill in additional registers set up by prologue into a regset. */
2680 DEFHOOK 2770 DEFHOOK
2681 (set_up_by_prologue, 2771 (set_up_by_prologue,
2682 "This hook should add additional registers that are computed by the prologue\ 2772 "This hook should add additional registers that are computed by the prologue\
2683 to the hard regset for shrink-wrapping optimization purposes.", 2773 to the hard regset for shrink-wrapping optimization purposes.",
2684 void, (struct hard_reg_set_container *), 2774 void, (struct hard_reg_set_container *),
2685 NULL) 2775 NULL)
2776
2777 /* For targets that have attributes that can affect whether a
2778 function's return statements need checking. For instance a 'naked'
2779 function attribute. */
2780 DEFHOOK
2781 (warn_func_return,
2782 "True if a function's return statements should be checked for matching the func tion's return type. This includes checking for falling off the end of a non-voi d function. Return false if no such check should be made.",
2783 bool, (tree),
2784 hook_bool_tree_true)
2686 2785
2687 /* Determine the type of unwind info to emit for debugging. */ 2786 /* Determine the type of unwind info to emit for debugging. */
2688 DEFHOOK 2787 DEFHOOK
2689 (debug_unwind_info, 2788 (debug_unwind_info,
2690 "", 2789 "",
2691 enum unwind_info_type, (void), 2790 enum unwind_info_type, (void),
2692 default_debug_unwind_info) 2791 default_debug_unwind_info)
2693 2792
2694 DEFHOOKPOD 2793 DEFHOOKPOD
2695 (atomic_test_and_set_trueval, 2794 (atomic_test_and_set_trueval,
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
2760 bool, false) 2859 bool, false)
2761 2860
2762 DEFHOOKPOD 2861 DEFHOOKPOD
2763 (want_debug_pub_sections, 2862 (want_debug_pub_sections,
2764 "True if the @code{.debug_pubtypes} and @code{.debug_pubnames} sections\ 2863 "True if the @code{.debug_pubtypes} and @code{.debug_pubnames} sections\
2765 should be emitted. These sections are not used on most platforms, and\ 2864 should be emitted. These sections are not used on most platforms, and\
2766 in particular GDB does not use them.", 2865 in particular GDB does not use them.",
2767 bool, false) 2866 bool, false)
2768 2867
2769 DEFHOOKPOD 2868 DEFHOOKPOD
2869 (force_at_comp_dir,
2870 "True if the @code{DW_AT_comp_dir} attribute should be emitted for each \
2871 compilation unit. This attribute is required for the darwin linker \
2872 to emit debug information.",
2873 bool, false)
2874
2875 DEFHOOKPOD
2770 (delay_sched2, "True if sched2 is not to be run at its normal place. \ 2876 (delay_sched2, "True if sched2 is not to be run at its normal place. \
2771 This usually means it will be run as part of machine-specific reorg.", 2877 This usually means it will be run as part of machine-specific reorg.",
2772 bool, false) 2878 bool, false)
2773 2879
2774 DEFHOOKPOD 2880 DEFHOOKPOD
2775 (delay_vartrack, "True if vartrack is not to be run at its normal place. \ 2881 (delay_vartrack, "True if vartrack is not to be run at its normal place. \
2776 This usually means it will be run as part of machine-specific reorg.", 2882 This usually means it will be run as part of machine-specific reorg.",
2777 bool, false) 2883 bool, false)
2778 2884
2779 /* Leave the boolean fields at the end. */ 2885 /* Leave the boolean fields at the end. */
2780 2886
2781 /* Close the 'struct gcc_target' definition. */ 2887 /* Close the 'struct gcc_target' definition. */
2782 HOOK_VECTOR_END (C90_EMPTY_HACK) 2888 HOOK_VECTOR_END (C90_EMPTY_HACK)
LEFTRIGHT

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b