Changes from Git (git


  1. [COFF] Use range for on relocations, NFC (details)
  2. Revert "[clang] Change builtin object size when subobject is invalid" (details)
  3. Revert "[DAGCombiner] Enable SimplifyDemandedBits vector support for TRUNCATE" (details)
  4. [NPM][Inliner] Factor ImportedFunctionStats in the InlineAdvisor (details)
Commit 69e0bc77a5d74a5f0e57ad3e7a22ce4fba210b85 by rnk
[COFF] Use range for on relocations, NFC
The file was modifiedlld/COFF/Chunks.cpp
Commit b270fd59f0a86fe737853abc43e76b9d29a67eea by George Burgess IV
Revert "[clang] Change builtin object size when subobject is invalid"

This reverts commit 275f30df8ad6de75e1f29e4b33eaeb67686caf0d.

As noted on the code review (, this
change causes us to reject valid code in a few cases. Reverting so we
have more time to figure out what the right fix{es are, is} here.
The file was modifiedclang/test/CodeGen/object-size.c
The file was modifiedclang/lib/AST/ExprConstant.cpp
Commit a51226057fc30510ac86b32a36a9769ddbf4c318 by hans
Revert "[DAGCombiner] Enable SimplifyDemandedBits vector support for TRUNCATE"

It caused "Vector shift amounts must be in the same as their first arg"
asserts in Chromium builds. See the code review for repro instructions.

> Add DemandedElts support inside the TRUNCATE analysis.
> Differential Revision:

This reverts commit cad4275d697c601761e0819863f487def73c67f8.
The file was modifiedllvm/lib/Target/AArch64/AArch64ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/AArch64/aarch64-smull.ll
The file was modifiedllvm/test/CodeGen/X86/known-signbits-vector.ll
The file was modifiedllvm/test/CodeGen/ARM/lowerMUL-newload.ll
The file was modifiedllvm/test/CodeGen/X86/combine-sra.ll
The file was modifiedllvm/test/CodeGen/Thumb2/mve-satmul-loops.ll
The file was modifiedllvm/test/CodeGen/X86/vector-trunc.ll
The file was modifiedllvm/test/CodeGen/X86/min-legal-vector-width.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
The file was modifiedllvm/test/CodeGen/Thumb2/mve-vmulh.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
The file was modifiedllvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll
The file was modifiedllvm/test/CodeGen/AArch64/lowerMUL-newload.ll
Commit e8aec763a57e211420dfceb2a8dc6b88574924f3 by mtrofin
[NPM][Inliner] Factor ImportedFunctionStats in the InlineAdvisor

When using 2 InlinePass instances in the same CGSCC - one for other
mandatory inlinings, the other for the heuristic-driven ones - the order
in which the ImportedFunctionStats would be output-ed would depend on
the destruction order of the inline passes, which is not deterministic.

This patch moves the ImportedFunctionStats responsibility to the
InlineAdvisor to address this problem.

Differential Revision:
The file was modifiedllvm/include/llvm/Transforms/Utils/ImportedFunctionsInliningStatistics.h
The file was modifiedllvm/lib/Analysis/MLInlineAdvisor.cpp
The file was modifiedllvm/lib/Transforms/IPO/SampleProfile.cpp
The file was modifiedllvm/include/llvm/Transforms/IPO/Inliner.h
The file was modifiedllvm/include/llvm/Analysis/InlineAdvisor.h
The file was modifiedllvm/include/llvm/Analysis/ReplayInlineAdvisor.h
The file was modifiedllvm/lib/Analysis/ReplayInlineAdvisor.cpp
The file was modifiedllvm/lib/Transforms/IPO/Inliner.cpp
The file was modifiedllvm/lib/Transforms/Utils/ImportedFunctionsInliningStatistics.cpp
The file was modifiedllvm/lib/Analysis/InlineAdvisor.cpp
The file was modifiedllvm/test/Transforms/Inline/inline_stats.ll
The file was modifiedllvm/include/llvm/Analysis/MLInlineAdvisor.h