]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Pull in r355854 from upstream llvm trunk (by Jonas Paulsson):
authordim <dim@FreeBSD.org>
Mon, 11 Mar 2019 19:15:57 +0000 (19:15 +0000)
committerdim <dim@FreeBSD.org>
Mon, 11 Mar 2019 19:15:57 +0000 (19:15 +0000)
commitd64d00cc0cc968da8b281870a6303206e36f74fb
treedff5cd711799cb4772af8b31c2c963863c54a9d4
parentb47ae6af61af46a18d89da9932894cc4eac3dec6
Pull in r355854 from upstream llvm trunk (by Jonas Paulsson):

  [RegAlloc]  Avoid compile time regression with multiple copy hints.

  As a fix for https://bugs.llvm.org/show_bug.cgi?id=40986 ("excessive
  compile time building opencollada"), this patch makes sure that no
  phys reg is hinted more than once from getRegAllocationHints().

  This handles the case were many virtual registers are assigned to the
  same physreg. The previous compile time fix (r343686) in
  weightCalcHelper() only made sure that physical/virtual registers are
  passed no more than once to addRegAllocationHint().

  Review: Dimitry Andric, Quentin Colombet
  https://reviews.llvm.org/D59201

This should fix a hang when compiling certain generated .cpp files in
the graphics/opencollada port.

PR: 236313
MFC after: 1 month
X-MFC-With: r344779
contrib/llvm/lib/CodeGen/TargetRegisterInfo.cpp