diff options
author | Sriraman Tallam <tmsriram@google.com> | 2013-06-18 22:45:03 +0000 |
---|---|---|
committer | Sriraman Tallam <tmsriram@gcc.gnu.org> | 2013-06-18 22:45:03 +0000 |
commit | bef8491a658de9e8920acaeff6cb76ef4e946e2c (patch) | |
tree | 36b462d3fe220a71b684a5b371e52f55cfc14584 /gcc/tree-inline.c | |
parent | 3dd55b2f9fdbf102dad43fca46578f4054174d45 (diff) | |
download | gcc-bef8491a658de9e8920acaeff6cb76ef4e946e2c.zip gcc-bef8491a658de9e8920acaeff6cb76ef4e946e2c.tar.gz gcc-bef8491a658de9e8920acaeff6cb76ef4e946e2c.tar.bz2 |
Emit errors when always_inline functions cannot be inlined in -O0 mode.
* tree-inline.c (expand_call_inline): Allow the error to be flagged
in early inline pass.
* ipa-inline.c (inline_always_inline_functions): Pretend always_inline
functions are inlined during failures to flag an error.
* gcc.target/i386/inline_error.c: New test.
* gcc.c-torture/compile/pr44043.c: Fix test to expect an error.
* gcc.c-torture/compile/pr43791.c: Fix test to expect an error.
From-SVN: r200179
Diffstat (limited to 'gcc/tree-inline.c')
-rw-r--r-- | gcc/tree-inline.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/gcc/tree-inline.c b/gcc/tree-inline.c index bee7766..f524771 100644 --- a/gcc/tree-inline.c +++ b/gcc/tree-inline.c @@ -3905,8 +3905,6 @@ expand_call_inline (basic_block bb, gimple stmt, copy_body_data *id) for inlining, but we can't do that because frontends overwrite the body. */ && !cg_edge->callee->local.redefined_extern_inline - /* Avoid warnings during early inline pass. */ - && cgraph_global_info_ready /* PR 20090218-1_0.c. Body can be provided by another module. */ && (reason != CIF_BODY_NOT_AVAILABLE || !flag_generate_lto)) { |