[all-commits] [llvm/llvm-project] 15e19a: Revert "[instcombine] Exploit UB implied by nofree...

Philip Reames via All-commits all-commits at lists.llvm.org
Thu Apr 22 10:53:43 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 15e19a259986ebb993a719b960b6bd3bb28d8329
      https://github.com/llvm/llvm-project/commit/15e19a259986ebb993a719b960b6bd3bb28d8329
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2021-04-22 (Thu, 22 Apr 2021)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/malloc-free-delete.ll

  Log Message:
  -----------
  Revert "[instcombine] Exploit UB implied by nofree attributes"

This change effectively reverts 86664638, but since there have been some changes on top and I wanted to leave the tests in, it's not a mechanical revert.

Why revert this now?  Two main reasons:
1) There are continuing discussion around what the semantics of nofree.  I am getting increasing uncomfortable with the seeming possibility we might redefine nofree in a way incompatible with these changes.
2) There was a reported miscompile triggered by this change (https://github.com/emscripten-core/emscripten/issues/9443).  At first, I was making good progress on tracking down the issues exposed and those issues appeared to be unrelated latent bugs.  Now that we've found at least one bug in the original change, and the investigation has stalled, I'm no longer comfortable leaving this in tree.  In retrospect, I probably should have reverted this earlier and investigated the issues once the triggering change was out of tree.




More information about the All-commits mailing list