As the subject says, these four standard names are not documented. By analogy to the way in which "sibcall_epilogue" has a separate entry from "epilogue", they should also have their own entries in the "standard pattern names for generation" chapter of the internals manual. The entry for FUNCTION_OK_FOR_SIBCALL even refers to "the 'sibcall' md pattern", but there is no other mention of it.
Note also that if you implement siball_epilogue by emitting a fully-schedulable RTL epilogue (rather than just using an unspec to represent the entire thing as a black box to the compiler and emitting it opencoded at assembler output generation time like the arm port does in 3.3.3 where I discovered this), you may also need to implement these sibcall patterns, or you can get ICEn when the register allocator gets confused in one of the later passes. This dependency is not mentioned anywhere. However I have not tested it against 4.x/HEAD to see if it remains the case. cheers, DaveK -- Summary: sibcall, sibcall_value, sibcall_pop, sibcall_value_pop: standard names not documented. Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: dave dot korn at artimi dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26831