I'm trying to fix an RTL-sharing bug in ifcvt and find the documentation has serious problems. Look at noce_try_store_flag. It says what it converts, but not what it converts *into*. It looks like later functions have the same problem. Moreover, the required documentation of each of the operands of most functions seem to be missing.