Code Review for gcc_13

Prepared by:Richard Lowe (richlowe) on 2012-Oct-28 20:56 -0400 EDT
Workspace:/builds/work/illumos/gcc (at 50be68c2d9f1)
Compare against: il-4_4_4 (at ff28631112cd)
Summary of changes: 59 lines changed: 42 ins; 10 del; 7 mod; 48510 unchg
Patch of changes: gcc_13.patch
Printable review: gcc_13.pdf

Cdiffs Udiffs Wdiffs Sdiffs Frames Old New Patch Raw gcc/common.opt

Implement -fstrict-calling-conventions
Stock GCC is overly willing to violate the ABI when calling local functions,
such that it passes arguments in registers on i386.  This hampers debugging
with anything other than a fully-aware DWARF debugger, and is generally not
something we desire.
Implement a flag which disables this behaviour, enabled by default.  The flag is
global, though only effective on i386, to more easily allow its globalization
later which, given the odds, is likely to be necessary.
4 lines changed: 4 ins; 0 del; 0 mod; 1441 unchg

Cdiffs Udiffs Wdiffs Sdiffs Frames Old New Patch Raw gcc/config/i386/i386.c

Implement -fstrict-calling-conventions
Stock GCC is overly willing to violate the ABI when calling local functions,
such that it passes arguments in registers on i386.  This hampers debugging
with anything other than a fully-aware DWARF debugger, and is generally not
something we desire.
Implement a flag which disables this behaviour, enabled by default.  The flag is
global, though only effective on i386, to more easily allow its globalization
later which, given the odds, is likely to be necessary.
3 lines changed: 2 ins; 0 del; 1 mod; 30040 unchg

Cdiffs Udiffs Wdiffs Sdiffs Frames Old New Patch Raw gcc/doc/invoke.texi

Implement -fstrict-calling-conventions
Stock GCC is overly willing to violate the ABI when calling local functions,
such that it passes arguments in registers on i386.  This hampers debugging
with anything other than a fully-aware DWARF debugger, and is generally not
something we desire.
Implement a flag which disables this behaviour, enabled by default.  The flag is
global, though only effective on i386, to more easily allow its globalization
later which, given the odds, is likely to be necessary.
6 lines changed: 6 ins; 0 del; 0 mod; 16675 unchg

------ ------ ------ ------ ------ Old --- Patch --- gcc/testsuite/gcc.dg/save-args-1.c (deleted)

testsuite/save-args-1: Actually test the full thing, rather than just the bit I broke
10 lines changed: 0 ins; 10 del; 0 mod; 0 unchg

Cdiffs Udiffs Wdiffs Sdiffs Frames Old New Patch Raw gcc/testsuite/gcc.target/i386/local.c

Implement -fstrict-calling-conventions
Stock GCC is overly willing to violate the ABI when calling local functions,
such that it passes arguments in registers on i386.  This hampers debugging
with anything other than a fully-aware DWARF debugger, and is generally not
something we desire.
Implement a flag which disables this behaviour, enabled by default.  The flag is
global, though only effective on i386, to more easily allow its globalization
later which, given the odds, is likely to be necessary.
2 lines changed: 1 ins; 0 del; 1 mod; 14 unchg

------ ------ ------ ------ ------ --- New Patch Raw gcc/testsuite/gcc.target/i386/save-args-1.c

testsuite/save-args-1: Actually test the full thing, rather than just the bit I broke
12 lines changed: 12 ins; 0 del; 0 mod; 0 unchg

------ ------ ------ ------ ------ --- New Patch Raw gcc/testsuite/gcc.target/i386/strict-cc.c

Implement -fstrict-calling-conventions
Stock GCC is overly willing to violate the ABI when calling local functions,
such that it passes arguments in registers on i386.  This hampers debugging
with anything other than a fully-aware DWARF debugger, and is generally not
something we desire.
Implement a flag which disables this behaviour, enabled by default.  The flag is
global, though only effective on i386, to more easily allow its globalization
later which, given the odds, is likely to be necessary.
17 lines changed: 17 ins; 0 del; 0 mod; 0 unchg

Cdiffs Udiffs Wdiffs Sdiffs Frames Old New Patch Raw libiberty/testsuite/test-demangle.c

libiberty/testsuite: Avoid conflicting getline()
5 lines changed: 0 ins; 0 del; 5 mod; 340 unchg

This code review page was prepared using /opt/onbld/bin/webrev. Webrev is maintained by the illumos project. The latest version may be obtained here.