New issue
Advanced search Search tips

Issue 760725 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug

Blocking:
issue 760615



Sign in to add a comment

ClangToTMac asserting

Project Member Reported by h...@chromium.org, Aug 30 2017

Issue description

Comment 2 by h...@chromium.org, Aug 30 2017

Suspects:

------------------------------------------------------------------------
r312126 | bmakam | 2017-08-30 07:57:12 -0700 (Wed, 30 Aug 2017) | 15 lines

Re-land MachineInstr: Reason locally about some memory objects before going to AA.

Summary:
Reverts r311008 to reinstate r310825 with a fix.

Refine alias checking for pseudo vs value to be conservative.
This fixes the original failure in builtbot unittest SingleSource/UnitTests/2003-07-09-SignedArgs.

Reviewers: hfinkel, nemanjai, efriedma

Reviewed By: efriedma

Subscribers: bjope, mcrosier, nhaehnle, javed.absar, llvm-commits

Differential Revision: https://reviews.llvm.org/D36900
------------------------------------------------------------------------


------------------------------------------------------------------------
r312154 | gberry | 2017-08-30 11:41:07 -0700 (Wed, 30 Aug 2017) | 20 lines

Re-enable "[MachineCopyPropagation] Extend pass to do COPY source forwarding"

Issues identified by buildbots addressed since original review:
- Fixed ARMLoadStoreOptimizer bug exposed by this change in r311907.
- The pass no longer forwards COPYs to physical register uses, since
  doing so can break code that implicitly relies on the physical
  register number of the use.
- The pass no longer forwards COPYs to undef uses, since doing so
  can break the machine verifier by creating LiveRanges that don't
  end on a use (since the undef operand is not considered a use).

  [MachineCopyPropagation] Extend pass to do COPY source forwarding

  This change extends MachineCopyPropagation to do COPY source forwarding.

  This change also extends the MachineCopyPropagation pass to be able to
  be run during register allocation, after physical registers have been
  assigned, but before the virtual registers have been re-written, which
  allows it to remove virtual register COPY LiveIntervals that become dead
  through the forwarding of all of their uses.
------------------------------------------------------------------------

Comment 3 by h...@chromium.org, Aug 30 2017

Looking at the changes, pretty sure it's r312154

Comment 4 by h...@chromium.org, Aug 30 2017

Status: Fixed (was: Started)
Revert is in r312178.

Sign in to add a comment