I do want to follow up on the optimization you referred to above. After thinking about it some more I don't see what benefit it could provide. The value of the bound expression (LEN) ends up computed at the call site and stored in a register that the library strncmp has to read. I can't think of any difference the MIN_EXPR could make in the library, so the code as is seems strictly worse than if it used the SSA_NAME directly instead. Please let me know if you don't agree (and what benefit you think it might provide). Otherwise I'll open a bug to change it.
I've raised bug 85980 for this. Martin