[PATCH] D17289: [X86] Fix False Data Dependency in popcnt

David Kreitzer via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 17 21:48:25 PST 2016


DavidKreitzer added a comment.

Asaf, why did you choose to create a new pass for this rather than modify the existing ExecutionDependencyFixPass? The existing pass is serving exactly the same purpose, and all the conditions it checks (in ExeDepsFix::shouldBreakDependence) apply equally to this popcnt case.

Also, do we have code in the RA that attempts to bias the register assignment choices to assign the same register for the src & dst of popcnt and the other instructions affected by false dependences (e.g. cvtss2sd)? Where feasible, assigning the same register for the src & dst is the most inexpensive way to eliminate a false dependence.


Repository:
  rL LLVM

http://reviews.llvm.org/D17289





More information about the llvm-commits mailing list