Mercurial > hg > CbC > CbC_gcc
comparison gcc/config/mips/frame-header-opt.c @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
comparison
equal
deleted
inserted
replaced
111:04ced10e8804 | 131:84e7813d76e9 |
---|---|
2 on the stack. The frame header is used by callees to save their arguments. | 2 on the stack. The frame header is used by callees to save their arguments. |
3 This optimization is specific to TARGET_OLDABI targets. For TARGET_NEWABI | 3 This optimization is specific to TARGET_OLDABI targets. For TARGET_NEWABI |
4 targets, if a frame header is required, it is allocated by the callee. | 4 targets, if a frame header is required, it is allocated by the callee. |
5 | 5 |
6 | 6 |
7 Copyright (C) 2015-2017 Free Software Foundation, Inc. | 7 Copyright (C) 2015-2018 Free Software Foundation, Inc. |
8 | 8 |
9 This file is part of GCC. | 9 This file is part of GCC. |
10 | 10 |
11 GCC is free software; you can redistribute it and/or modify it | 11 GCC is free software; you can redistribute it and/or modify it |
12 under the terms of the GNU General Public License as published by the | 12 under the terms of the GNU General Public License as published by the |
21 You should have received a copy of the GNU General Public License | 21 You should have received a copy of the GNU General Public License |
22 along with GCC; see the file COPYING3. If not see | 22 along with GCC; see the file COPYING3. If not see |
23 <http://www.gnu.org/licenses/>. */ | 23 <http://www.gnu.org/licenses/>. */ |
24 | 24 |
25 | 25 |
26 #define IN_TARGET_CODE 1 | |
27 | |
26 #include "config.h" | 28 #include "config.h" |
27 #include "system.h" | 29 #include "system.h" |
28 #include "context.h" | 30 #include "context.h" |
29 #include "coretypes.h" | 31 #include "coretypes.h" |
32 #include "backend.h" | |
30 #include "tree.h" | 33 #include "tree.h" |
31 #include "tree-core.h" | 34 #include "tree-core.h" |
32 #include "tree-pass.h" | 35 #include "tree-pass.h" |
33 #include "target.h" | 36 #include "target.h" |
34 #include "target-globals.h" | 37 #include "target-globals.h" |
35 #include "profile-count.h" | 38 #include "profile-count.h" |
36 #include "cfg.h" | |
37 #include "cgraph.h" | 39 #include "cgraph.h" |
38 #include "function.h" | 40 #include "function.h" |
39 #include "basic-block.h" | 41 #include "basic-block.h" |
40 #include "gimple.h" | 42 #include "gimple.h" |
41 #include "gimple-iterator.h" | 43 #include "gimple-iterator.h" |
97 | 99 |
98 void | 100 void |
99 mips_register_frame_header_opt (void) | 101 mips_register_frame_header_opt (void) |
100 { | 102 { |
101 opt_pass *p = make_pass_ipa_frame_header_opt (g); | 103 opt_pass *p = make_pass_ipa_frame_header_opt (g); |
102 static struct register_pass_info f = | 104 struct register_pass_info f = { p, "comdats", 1, PASS_POS_INSERT_AFTER }; |
103 {p, "comdats", 1, PASS_POS_INSERT_AFTER }; | |
104 register_pass (&f); | 105 register_pass (&f); |
105 } | 106 } |
106 | 107 |
107 | 108 |
108 /* Return true if it is certain that this is a leaf function. False if it is | 109 /* Return true if it is certain that this is a leaf function. False if it is |