FailedChanges

Summary

  1. [lit] Remove setting of the target-windows feature No other OSes use a target-<os> feature, and no tests depend on it any lomger. Differential Revision: https://reviews.llvm.org/D68450
  2. [clang][IFS] Fixing spelling errors in interface-stubs OPT flag (NFC). This is just a long standing spelling error that was found recently.
  3. [llvm-lipo] Pass ArrayRef by value. Pass ArrayRef by value, fix formatting. NFC. Test plan: make check-all
  4. Revert 374629 "[sancov] Accommodate sancov and coverage report server for use under Windows" http://lab.llvm.org:8011/builders/clang-s390x-linux/builds/27650/steps/ninja%20check%201/logs/stdio http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/31759 http://lab.llvm.org:8011/builders/clang-s390x-linux-lnt/builds/15095 http://lab.llvm.org:8011/builders/clang-ppc64be-linux-multistage/builds/21075 http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/31759
  5. NFC: clang-format rL374420 and adjust comment wording The commit of rL374420 had various formatting issues, including lines that exceed 80 columns. This patch applies `git clang-format` on the changes from commit 13bd3ef40d8b1586f26a022e01b21e56c91e05bd. It further adjusts a comment to clarify the domain of inputs upon which a newly added function is meant to operate. The adjustment to the comment was suggested in a post-commit comment on D68721 and discussed off-list with @sfertile.
  6. recommit: [LoopVectorize][PowerPC] Estimate int and float register pressure separately in loop-vectorize In loop-vectorize, interleave count and vector factor depend on target register number. Currently, it does not estimate different register pressure for different register class separately(especially for scalar type, float type should not be on the same position with int type), so it's not accurate. Specifically, it causes too many times interleaving/unrolling, result in too many register spills in loop body and hurting performance. So we need classify the register classes in IR level, and importantly these are abstract register classes, and are not the target register class of backend provided in td file. It's used to establish the mapping between the types of IR values and the number of simultaneous live ranges to which we'd like to limit for some set of those types. For example, POWER target, register num is special when VSX is enabled. When VSX is enabled, the number of int scalar register is 32(GPR), float is 64(VSR), but for int and float vector register both are 64(VSR). So there should be 2 kinds of register class when vsx is enabled, and 3 kinds of register class when VSX is NOT enabled. It runs on POWER target, it makes big(+~30%) performance improvement in one specific bmk(503.bwaves_r) of spec2017 and no other obvious degressions. Differential revision: https://reviews.llvm.org/D67148
  7. [clang][IFS] Updating tests to pass on -fvisibility=hidden builds (NFCi). Special thanks to JamesNagurne who got to the bottom of this; landing this on his behalf. Differential Revision: https://reviews.llvm.org/D68897
  8. [sancov] Accommodate sancov and coverage report server for use under Windows Summary: This patch makes the following changes to SanCov and its complementary Python script in order to resolve issues pertaining to non-UNIX file paths in JSON symbolization information: * Convert all paths to use forward slash. * Update `coverage-report-server.py` to correctly handle paths to sources which contain spaces. * Remove Linux platform restriction for all SanCov unit tests. All SanCov tests passed when ran on my local Windows machine. Patch by Douglas Gliner. Reviewers: kcc, filcab, phosek, morehouse, vitalybuka, metzman Reviewed By: vitalybuka Subscribers: vsk, Dor1s, llvm-commits Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D51018
  9. [sancov] Use LLVM Support library JSON writer in favor of individual implementation Summary: In this diff, I've replaced the individual implementation of `JSONWriter` with `json::OStream` provided by `llvm/Support/JSON.h`. Important Note: The output format of the JSON is considerably different compared to the original implementation. Important differences include: * New line for each entry in an array (should make diffs cleaner) * No space between keys and colon in attributed object entries. * Attributes with empty strings will now print the attribute name and a quote pair rather than excluding the attribute altogether Examples of these differences can be seen in the changes to the sancov tests which compare the JSON output. Patch by Douglas Gliner. Reviewers: kcc, filcab, phosek, morehouse, vitalybuka, metzman Subscribers: mehdi_amini, dexonsmith, llvm-commits Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D68752
  10. Slightly relax restriction on exact order arguments must appear.
Revision 374639 by mstorsjo:
[lit] Remove setting of the target-windows feature

No other OSes use a target-<os> feature, and no tests depend on it
any lomger.

Differential Revision: https://reviews.llvm.org/D68450
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/utils/lit/lit/llvm/config.pyllvm.src/utils/lit/lit/llvm/config.py
Revision 374638 by zer0:
[clang][IFS] Fixing spelling errors in interface-stubs OPT flag (NFC).

This is just a long standing spelling error that was found recently.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Driver/Options.tdclang.src/include/clang/Driver/Options.td
The file was modified/cfe/trunk/lib/Driver/Driver.cppclang.src/lib/Driver/Driver.cpp
The file was modified/cfe/trunk/lib/Driver/ToolChains/Clang.cppclang.src/lib/Driver/ToolChains/Clang.cpp
The file was modified/cfe/trunk/lib/Driver/Types.cppclang.src/lib/Driver/Types.cpp
The file was modified/cfe/trunk/lib/Frontend/CompilerInvocation.cppclang.src/lib/Frontend/CompilerInvocation.cpp
The file was modified/cfe/trunk/lib/Frontend/InterfaceStubFunctionsConsumer.cppclang.src/lib/Frontend/InterfaceStubFunctionsConsumer.cpp
Revision 374637 by alexshap:
[llvm-lipo] Pass ArrayRef by value.

Pass ArrayRef by value, fix formatting. NFC.

Test plan: make check-all
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/tools/llvm-lipo/llvm-lipo.cppllvm.src/tools/llvm-lipo/llvm-lipo.cpp
Revision 374636 by Vitaly Buka:
Revert 374629 "[sancov] Accommodate sancov and coverage report server for use under Windows"

http://lab.llvm.org:8011/builders/clang-s390x-linux/builds/27650/steps/ninja%20check%201/logs/stdio
http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/31759
http://lab.llvm.org:8011/builders/clang-s390x-linux-lnt/builds/15095
http://lab.llvm.org:8011/builders/clang-ppc64be-linux-multistage/builds/21075
http://lab.llvm.org:8011/builders/clang-ppc64be-linux-lnt/builds/31759
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/tools/sancov/blacklist.testllvm.src/test/tools/sancov/blacklist.test
The file was modified/llvm/trunk/test/tools/sancov/covered_functions.testllvm.src/test/tools/sancov/covered_functions.test
The file was modified/llvm/trunk/test/tools/sancov/merge.testllvm.src/test/tools/sancov/merge.test
The file was modified/llvm/trunk/test/tools/sancov/not_covered_functions.testllvm.src/test/tools/sancov/not_covered_functions.test
The file was modified/llvm/trunk/test/tools/sancov/print.testllvm.src/test/tools/sancov/print.test
The file was modified/llvm/trunk/test/tools/sancov/stats.testllvm.src/test/tools/sancov/stats.test
The file was modified/llvm/trunk/test/tools/sancov/symbolize.testllvm.src/test/tools/sancov/symbolize.test
The file was modified/llvm/trunk/test/tools/sancov/symbolize_noskip_dead_files.testllvm.src/test/tools/sancov/symbolize_noskip_dead_files.test
The file was modified/llvm/trunk/test/tools/sancov/validation.testllvm.src/test/tools/sancov/validation.test
The file was modified/llvm/trunk/tools/sancov/coverage-report-server.pyllvm.src/tools/sancov/coverage-report-server.py
The file was modified/llvm/trunk/tools/sancov/sancov.cppllvm.src/tools/sancov/sancov.cpp
Revision 374635 by hubert.reinterpretcast:
NFC: clang-format rL374420 and adjust comment wording

The commit of rL374420 had various formatting issues, including lines
that exceed 80 columns. This patch applies `git clang-format` on the
changes from commit 13bd3ef40d8b1586f26a022e01b21e56c91e05bd.

It further adjusts a comment to clarify the domain of inputs upon which
a newly added function is meant to operate. The adjustment to the
comment was suggested in a post-commit comment on D68721 and discussed
off-list with @sfertile.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/PowerPC/PPCAsmPrinter.cppllvm.src/lib/Target/PowerPC/PPCAsmPrinter.cpp
Revision 374634 by wuzish:
recommit: [LoopVectorize][PowerPC] Estimate int and float register pressure separately in loop-vectorize

In loop-vectorize, interleave count and vector factor depend on target register number. Currently, it does not
estimate different register pressure for different register class separately(especially for scalar type,
float type should not be on the same position with int type), so it's not accurate. Specifically,
it causes too many times interleaving/unrolling, result in too many register spills in loop body and hurting performance.

So we need classify the register classes in IR level, and importantly these are abstract register classes,
and are not the target register class of backend provided in td file. It's used to establish the mapping between
the types of IR values and the number of simultaneous live ranges to which we'd like to limit for some set of those types.

For example, POWER target, register num is special when VSX is enabled. When VSX is enabled, the number of int scalar register is 32(GPR),
float is 64(VSR), but for int and float vector register both are 64(VSR). So there should be 2 kinds of register class when vsx is enabled,
and 3 kinds of register class when VSX is NOT enabled.

It runs on POWER target, it makes big(+~30%) performance improvement in one specific bmk(503.bwaves_r) of spec2017 and no other obvious degressions.

Differential revision: https://reviews.llvm.org/D67148
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/Analysis/TargetTransformInfo.hllvm.src/include/llvm/Analysis/TargetTransformInfo.h
The file was modified/llvm/trunk/include/llvm/Analysis/TargetTransformInfoImpl.hllvm.src/include/llvm/Analysis/TargetTransformInfoImpl.h
The file was modified/llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.hllvm.src/include/llvm/CodeGen/BasicTTIImpl.h
The file was modified/llvm/trunk/lib/Analysis/TargetTransformInfo.cppllvm.src/lib/Analysis/TargetTransformInfo.cpp
The file was modified/llvm/trunk/lib/Target/AArch64/AArch64TargetTransformInfo.hllvm.src/lib/Target/AArch64/AArch64TargetTransformInfo.h
The file was modified/llvm/trunk/lib/Target/ARM/ARMTargetTransformInfo.hllvm.src/lib/Target/ARM/ARMTargetTransformInfo.h
The file was modified/llvm/trunk/lib/Target/PowerPC/PPCTargetTransformInfo.cppllvm.src/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
The file was modified/llvm/trunk/lib/Target/PowerPC/PPCTargetTransformInfo.hllvm.src/lib/Target/PowerPC/PPCTargetTransformInfo.h
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZTargetTransformInfo.cppllvm.src/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
The file was modified/llvm/trunk/lib/Target/SystemZ/SystemZTargetTransformInfo.hllvm.src/lib/Target/SystemZ/SystemZTargetTransformInfo.h
The file was modified/llvm/trunk/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cppllvm.src/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
The file was modified/llvm/trunk/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.hllvm.src/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
The file was modified/llvm/trunk/lib/Target/X86/X86TargetTransformInfo.cppllvm.src/lib/Target/X86/X86TargetTransformInfo.cpp
The file was modified/llvm/trunk/lib/Target/X86/X86TargetTransformInfo.hllvm.src/lib/Target/X86/X86TargetTransformInfo.h
The file was modified/llvm/trunk/lib/Target/XCore/XCoreTargetTransformInfo.hllvm.src/lib/Target/XCore/XCoreTargetTransformInfo.h
The file was modified/llvm/trunk/lib/Transforms/Scalar/LoopStrengthReduce.cppllvm.src/lib/Transforms/Scalar/LoopStrengthReduce.cpp
The file was modified/llvm/trunk/lib/Transforms/Vectorize/LoopVectorize.cppllvm.src/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modified/llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cppllvm.src/lib/Transforms/Vectorize/SLPVectorizer.cpp
The file was added/llvm/trunk/test/Transforms/LoopVectorize/PowerPC/reg-usage.llllvm.src/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
The file was modified/llvm/trunk/test/Transforms/LoopVectorize/X86/reg-usage-debug.llllvm.src/test/Transforms/LoopVectorize/X86/reg-usage-debug.ll
The file was modified/llvm/trunk/test/Transforms/LoopVectorize/X86/reg-usage.llllvm.src/test/Transforms/LoopVectorize/X86/reg-usage.ll
Revision 374632 by zer0:
[clang][IFS] Updating tests to pass on -fvisibility=hidden builds (NFCi).

Special thanks to JamesNagurne who got to the bottom of this; landing this on
his behalf.

Differential Revision: https://reviews.llvm.org/D68897
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/InterfaceStubs/externstatic.cclang.src/test/InterfaceStubs/externstatic.c
The file was modified/cfe/trunk/test/InterfaceStubs/merge-conflict-test.cclang.src/test/InterfaceStubs/merge-conflict-test.c
The file was modified/cfe/trunk/test/InterfaceStubs/object-float.cclang.src/test/InterfaceStubs/object-float.c
The file was modified/cfe/trunk/test/InterfaceStubs/object.cclang.src/test/InterfaceStubs/object.c
Revision 374629 by Vitaly Buka:
[sancov] Accommodate sancov and coverage report server for use under Windows

Summary:
This patch makes the following changes to SanCov and its complementary Python script in order to resolve issues pertaining to non-UNIX file paths in JSON symbolization information:
* Convert all paths to use forward slash.
* Update `coverage-report-server.py` to correctly handle paths to sources which contain spaces.
* Remove Linux platform restriction for all SanCov unit tests. All SanCov tests passed when ran on my local Windows machine.

Patch by Douglas Gliner.

Reviewers: kcc, filcab, phosek, morehouse, vitalybuka, metzman

Reviewed By: vitalybuka

Subscribers: vsk, Dor1s, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D51018
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/tools/sancov/blacklist.testllvm.src/test/tools/sancov/blacklist.test
The file was modified/llvm/trunk/test/tools/sancov/covered_functions.testllvm.src/test/tools/sancov/covered_functions.test
The file was modified/llvm/trunk/test/tools/sancov/merge.testllvm.src/test/tools/sancov/merge.test
The file was modified/llvm/trunk/test/tools/sancov/not_covered_functions.testllvm.src/test/tools/sancov/not_covered_functions.test
The file was modified/llvm/trunk/test/tools/sancov/print.testllvm.src/test/tools/sancov/print.test
The file was modified/llvm/trunk/test/tools/sancov/stats.testllvm.src/test/tools/sancov/stats.test
The file was modified/llvm/trunk/test/tools/sancov/symbolize.testllvm.src/test/tools/sancov/symbolize.test
The file was modified/llvm/trunk/test/tools/sancov/symbolize_noskip_dead_files.testllvm.src/test/tools/sancov/symbolize_noskip_dead_files.test
The file was modified/llvm/trunk/test/tools/sancov/validation.testllvm.src/test/tools/sancov/validation.test
The file was modified/llvm/trunk/tools/sancov/coverage-report-server.pyllvm.src/tools/sancov/coverage-report-server.py
The file was modified/llvm/trunk/tools/sancov/sancov.cppllvm.src/tools/sancov/sancov.cpp
Revision 374628 by Vitaly Buka:
[sancov] Use LLVM Support library JSON writer in favor of individual implementation

Summary:
In this diff, I've replaced the individual implementation of `JSONWriter` with `json::OStream` provided by `llvm/Support/JSON.h`.

Important Note: The output format of the JSON is considerably different compared to the original implementation. Important differences include:
* New line for each entry in an array (should make diffs cleaner)
* No space between keys and colon in attributed object entries.
* Attributes with empty strings will now print the attribute name and a quote pair rather than excluding the attribute altogether

Examples of these differences can be seen in the changes to the sancov tests which compare the JSON output.

Patch by Douglas Gliner.

Reviewers: kcc, filcab, phosek, morehouse, vitalybuka, metzman

Subscribers: mehdi_amini, dexonsmith, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D68752
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/test/tools/sancov/merge.testllvm.src/test/tools/sancov/merge.test
The file was modified/llvm/trunk/test/tools/sancov/symbolize.testllvm.src/test/tools/sancov/symbolize.test
The file was modified/llvm/trunk/test/tools/sancov/symbolize_noskip_dead_files.testllvm.src/test/tools/sancov/symbolize_noskip_dead_files.test
The file was modified/llvm/trunk/tools/sancov/sancov.cppllvm.src/tools/sancov/sancov.cpp
Revision 374627 by dyung:
Slightly relax restriction on exact order arguments must appear.
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/Driver/openmp-offload.cclang.src/test/Driver/openmp-offload.c