The nonnull function attribute specifies that certain pointer arguments to said function are not allowed to be NULL. The VRP pass could put this in the possible range for said variables, after which NULL pointer checks inside the function body (or more likely, functions inlined into that function) can be optimized away.
-- Summary: (optimisation) VRP pass could/should use non-null function attribute Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: enhancement Priority: P2 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: arjanv at redhat dot com CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21582