[all-commits] [llvm/llvm-project] dac98a: [RegisterClassInfo] Use SmallVector::assign instea...

topperc via All-commits all-commits at lists.llvm.org
Wed Jan 1 18:53:20 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: dac98a22052eac66295ce443eed20e21bf37d28d
      https://github.com/llvm/llvm-project/commit/dac98a22052eac66295ce443eed20e21bf37d28d
  Author: Craig Topper <craig.topper at gmail.com>
  Date:   2020-01-01 (Wed, 01 Jan 2020)

  Changed paths:
    M llvm/lib/CodeGen/RegisterClassInfo.cpp

  Log Message:
  -----------
  [RegisterClassInfo] Use SmallVector::assign instead of resize to make sure we erase previous contents from all entries of the vector.

resize only writes to elements that get added. Any elements that
already existed maintain their previous value. In this case we're
trying to erase cached information so we should use assign which
will write to every element.

Found while trying to add new tests to an existing X86 test and
 noticed register allocation changing in other functions.


  Commit: 0b7b21dce46572c335c0d94b0f24464611389a36
      https://github.com/llvm/llvm-project/commit/0b7b21dce46572c335c0d94b0f24464611389a36
  Author: Craig Topper <craig.topper at gmail.com>
  Date:   2020-01-01 (Wed, 01 Jan 2020)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512-regcall-NoMask.ll

  Log Message:
  -----------
  [X86] Add test cases for regcall function that takes a long double as a parameter, but does not return a long double.

I believe we are incorrectly doing some FP stack manipulations
after the call.


Compare: https://github.com/llvm/llvm-project/compare/2fcf7691dfb4...0b7b21dce465


More information about the All-commits mailing list