FailedChanges

Summary

  1. [PowerPC] add test that could infinite loop with reordered transforms; NFC This is a slightly reduced version of the test from D61384. Adding this as a preliminary step, so I can update D61149 with the proposed fix.
  2. [X86][SSE] Fold scalar horizontal add/sub for non-0/1 element extractions We already perform horizontal add/sub if we extract from elements 0 and 1, this patch extends it to non-0/1 element extraction indices (as long as they are from the lowest 128-bit vector). Differential Revision: https://reviews.llvm.org/D61263
  3. [globalisel] Update the legalizer documentation Summary: * The getActionDefinitionsBuilder() is now documented. * Includes descriptions of the various actions (legal*, widenScalar*, lower*, etc). * Includes descriptions of the various predicates (*If, *For, *ForCartesianProduct, etc.) * Includes the rule-order details * Removed the out-of-date prohibition on non-power-of-2 types. * Removed the Vector types section since it was incorrect and vectors follow the same ruleset as scalars. They're only special in the sense that more of the actions and predicates are meaningful for them (e.g. moreElements). * Clarified the position on context sensitive legality (which is not permitted) and contrasted this with context sensitive legalization (which is permitted). Reviewers: bogner, aditya_nandakumar, volkan, aemerson, paquette, arsenm Reviewed By: paquette Subscribers: wdng, rovka, kristof.beyls, jfb, Petar.Avramovic, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D61273
  4. [AMDGPU] gfx1010 GCNRegBankReassign pass Reassign registers to reduce register bank conflicts. Differential Revision: https://reviews.llvm.org/D61344
  5. Option spell checking: Penalize delimiter flags if input has no argument If the user passes a flag like `-version` to a program, it's more likely they mean `--version` than `-version:`, since there's no parameter passed. Hence, give delimited arguments a penalty of 1 if the user input doesn't contain the delimiter or no data after it. The motivation is that with this, lld-link can suggest "--version" instead of "-version:" for "-version" and "-nodefaultlib" instead of "-nodefaultlib:" for "-nodefaultlibs". Differential Revision: https://reviews.llvm.org/D61382
  6. [AMDGPU] gfx1010 GCNNSAReassign pass Convert NSA into non-NSA images. Differential Revision: https://reviews.llvm.org/D61341
  7. [AMDGPU] gfx1010 MIMG implementation Differential Revision: https://reviews.llvm.org/D61339
Revision 359709 by spatel:
[PowerPC] add test that could infinite loop with reordered transforms; NFC

This is a slightly reduced version of the test from D61384.
Adding this as a preliminary step, so I can update D61149 with
the proposed fix.
Change TypePath in RepositoryPath in Workspace
The file was added/llvm/trunk/test/CodeGen/PowerPC/repeated-fp-divisors.lltrunk/test/CodeGen/PowerPC/repeated-fp-divisors.ll
Revision 359707 by rksimon:
[X86][SSE] Fold scalar horizontal add/sub for non-0/1 element extractions

We already perform horizontal add/sub if we extract from elements 0 and 1, this patch extends it to non-0/1 element extraction indices (as long as they are from the lowest 128-bit vector).

Differential Revision: https://reviews.llvm.org/D61263
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpptrunk/lib/Target/X86/X86ISelLowering.cpp
The file was modified/llvm/trunk/test/CodeGen/X86/haddsub.lltrunk/test/CodeGen/X86/haddsub.ll
The file was modified/llvm/trunk/test/CodeGen/X86/phaddsub-extract.lltrunk/test/CodeGen/X86/phaddsub-extract.ll
Revision 359705 by dsanders:
[globalisel] Update the legalizer documentation

Summary:
* The getActionDefinitionsBuilder() is now documented.
  * Includes descriptions of the various actions (legal*, widenScalar*, lower*,
    etc).
  * Includes descriptions of the various predicates (*If, *For,
    *ForCartesianProduct, etc.)
  * Includes the rule-order details
* Removed the out-of-date prohibition on non-power-of-2 types.
* Removed the Vector types section since it was incorrect and vectors follow the
  same ruleset as scalars. They're only special in the sense that more of the
  actions and predicates are meaningful for them (e.g. moreElements).
* Clarified the position on context sensitive legality (which is not permitted)
  and contrasted this with context sensitive legalization (which is permitted).

Reviewers: bogner, aditya_nandakumar, volkan, aemerson, paquette, arsenm

Reviewed By: paquette

Subscribers: wdng, rovka, kristof.beyls, jfb, Petar.Avramovic, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D61273
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/docs/GlobalISel.rsttrunk/docs/GlobalISel.rst
Revision 359704 by rampitec:
[AMDGPU] gfx1010 GCNRegBankReassign pass

Reassign registers to reduce register bank conflicts.

Differential Revision: https://reviews.llvm.org/D61344
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPU.htrunk/lib/Target/AMDGPU/AMDGPU.h
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUTargetMachine.cpptrunk/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/CMakeLists.txttrunk/lib/Target/AMDGPU/CMakeLists.txt
The file was added/llvm/trunk/lib/Target/AMDGPU/GCNRegBankReassign.cpptrunk/lib/Target/AMDGPU/GCNRegBankReassign.cpp
The file was added/llvm/trunk/test/CodeGen/AMDGPU/regbank-reassign.mirtrunk/test/CodeGen/AMDGPU/regbank-reassign.mir
Revision 359701 by nico:
Option spell checking: Penalize delimiter flags if input has no argument

If the user passes a flag like `-version` to a program, it's more likely
they mean `--version` than `-version:`, since there's no parameter
passed. Hence, give delimited arguments a penalty of 1 if the user input
doesn't contain the delimiter or no data after it.

The motivation is that with this, lld-link can suggest "--version"
instead of "-version:" for "-version" and "-nodefaultlib" instead of
"-nodefaultlib:" for "-nodefaultlibs".

Differential Revision: https://reviews.llvm.org/D61382
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Option/OptTable.cpptrunk/lib/Option/OptTable.cpp
The file was modified/llvm/trunk/unittests/Option/OptionParsingTest.cpptrunk/unittests/Option/OptionParsingTest.cpp
The file was modified/llvm/trunk/unittests/Option/Opts.tdtrunk/unittests/Option/Opts.td
Revision 359700 by rampitec:
[AMDGPU] gfx1010 GCNNSAReassign pass

Convert NSA into non-NSA images.

Differential Revision: https://reviews.llvm.org/D61341
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPU.htrunk/lib/Target/AMDGPU/AMDGPU.h
The file was modified/llvm/trunk/lib/Target/AMDGPU/AMDGPUTargetMachine.cpptrunk/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/CMakeLists.txttrunk/lib/Target/AMDGPU/CMakeLists.txt
The file was added/llvm/trunk/lib/Target/AMDGPU/GCNNSAReassign.cpptrunk/lib/Target/AMDGPU/GCNNSAReassign.cpp
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.dim.ll
The file was added/llvm/trunk/test/CodeGen/AMDGPU/nsa-reassign.lltrunk/test/CodeGen/AMDGPU/nsa-reassign.ll
Revision 359698 by rampitec:
[AMDGPU] gfx1010 MIMG implementation

Differential Revision: https://reviews.llvm.org/D61339
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/IR/IntrinsicsAMDGPU.tdtrunk/include/llvm/IR/IntrinsicsAMDGPU.td
The file was modified/llvm/trunk/include/llvm/MC/MCInst.htrunk/include/llvm/MC/MCInst.h
The file was modified/llvm/trunk/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpptrunk/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpptrunk/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpptrunk/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.htrunk/lib/Target/AMDGPU/InstPrinter/AMDGPUInstPrinter.h
The file was modified/llvm/trunk/lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpptrunk/lib/Target/AMDGPU/MCTargetDesc/SIMCCodeEmitter.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/MIMGInstructions.tdtrunk/lib/Target/AMDGPU/MIMGInstructions.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIISelLowering.cpptrunk/lib/Target/AMDGPU/SIISelLowering.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstrFormats.tdtrunk/lib/Target/AMDGPU/SIInstrFormats.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstrInfo.cpptrunk/lib/Target/AMDGPU/SIInstrInfo.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIInstrInfo.tdtrunk/lib/Target/AMDGPU/SIInstrInfo.td
The file was modified/llvm/trunk/lib/Target/AMDGPU/SIShrinkInstructions.cpptrunk/lib/Target/AMDGPU/SIShrinkInstructions.cpp
The file was modified/llvm/trunk/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.htrunk/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.atomic.dim.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.d16.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.d16.dim.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.d16.dim.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.gather4.dim.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.getlod.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.getlod.dim.ll
The file was added/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.nsa.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.nsa.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.d16.dim.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.image.sample.dim.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.d16.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.load.d16.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.d16.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.d16.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.d16.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.d16.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.load.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.d16.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.d16.ll
The file was modified/llvm/trunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.lltrunk/test/CodeGen/AMDGPU/llvm.amdgcn.struct.tbuffer.store.ll
The file was added/llvm/trunk/test/MC/AMDGPU/gfx10_asm_mimg.strunk/test/MC/AMDGPU/gfx10_asm_mimg.s
The file was added/llvm/trunk/test/MC/AMDGPU/gfx10_asm_mimg_err.strunk/test/MC/AMDGPU/gfx10_asm_mimg_err.s
The file was added/llvm/trunk/test/MC/AMDGPU/mtbuf-gfx10.strunk/test/MC/AMDGPU/mtbuf-gfx10.s
The file was added/llvm/trunk/test/MC/Disassembler/AMDGPU/gfx10_mimg.txttrunk/test/MC/Disassembler/AMDGPU/gfx10_mimg.txt
The file was added/llvm/trunk/test/MC/Disassembler/AMDGPU/mtbuf_gfx10.txttrunk/test/MC/Disassembler/AMDGPU/mtbuf_gfx10.txt

Summary

  1. [Driver] Explicitly request platform rtlib in the Driver pic test This test checks whether crtbegin.o and crtend.o appear on the link line, but names of these files may be affected by the choice of the rtlib, specifically when compiler-rt is used as the default rtlib the names will be clang_rt.crtbegin.o and clang_rt.crtend.o instead of crtbeginS.o and crtendS.o. To avoid the test failure, explicitly request to use the platform rtlib. Differential Revision: https://reviews.llvm.org/D61383
  2. Bump DIAG_SIZE_SEMA, as we've hit it. $ grep 'DIAG_SIZE_SEMA =' include/clang/Basic/DiagnosticIDs.h DIAG_SIZE_SEMA = 4000, $ grep DIAG $(build)/tools/clang/include/clang/Basic/DiagnosticSemaKinds.inc | wc -l 3499
Revision 359706 by phosek:
[Driver] Explicitly request platform rtlib in the Driver pic test

This test checks whether crtbegin.o and crtend.o appear on the link
line, but names of these files may be affected by the choice of the
rtlib, specifically when compiler-rt is used as the default rtlib
the names will be clang_rt.crtbegin.o and clang_rt.crtend.o instead
of crtbeginS.o and crtendS.o. To avoid the test failure, explicitly
request to use the platform rtlib.

Differential Revision: https://reviews.llvm.org/D61383
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/test/Driver/pic.ctrunk/test/Driver/pic.c
Revision 359702 by scott.linder:
Bump DIAG_SIZE_SEMA, as we've hit it.

$ grep 'DIAG_SIZE_SEMA          =' include/clang/Basic/DiagnosticIDs.h
      DIAG_SIZE_SEMA          = 4000,
$ grep DIAG $(build)/tools/clang/include/clang/Basic/DiagnosticSemaKinds.inc | wc -l
3499
Change TypePath in RepositoryPath in Workspace
The file was modified/cfe/trunk/include/clang/Basic/DiagnosticIDs.htrunk/include/clang/Basic/DiagnosticIDs.h

Summary

  1. [sanitizer] Implement reallocarray. Summary: It's a cross of calloc and realloc. Sanitizers implement calloc-like check for size overflow. Reviewers: vitalybuka, kcc Subscribers: kubamracek, #sanitizers, llvm-commits Tags: #sanitizers, #llvm Differential Revision: https://reviews.llvm.org/D61108
Revision 359708 by eugenis:
[sanitizer] Implement reallocarray.

Summary:
It's a cross of calloc and realloc. Sanitizers implement calloc-like check for size
overflow.

Reviewers: vitalybuka, kcc

Subscribers: kubamracek, #sanitizers, llvm-commits

Tags: #sanitizers, #llvm

Differential Revision: https://reviews.llvm.org/D61108
Change TypePath in RepositoryPath in Workspace
The file was modified/compiler-rt/trunk/include/sanitizer/hwasan_interface.htrunk/include/sanitizer/hwasan_interface.h
The file was modified/compiler-rt/trunk/lib/asan/asan_allocator.cctrunk/lib/asan/asan_allocator.cc
The file was modified/compiler-rt/trunk/lib/asan/asan_allocator.htrunk/lib/asan/asan_allocator.h
The file was modified/compiler-rt/trunk/lib/asan/asan_errors.cctrunk/lib/asan/asan_errors.cc
The file was modified/compiler-rt/trunk/lib/asan/asan_errors.htrunk/lib/asan/asan_errors.h
The file was modified/compiler-rt/trunk/lib/asan/asan_malloc_linux.cctrunk/lib/asan/asan_malloc_linux.cc
The file was modified/compiler-rt/trunk/lib/asan/asan_report.cctrunk/lib/asan/asan_report.cc
The file was modified/compiler-rt/trunk/lib/asan/asan_report.htrunk/lib/asan/asan_report.h
The file was modified/compiler-rt/trunk/lib/hwasan/hwasan.htrunk/lib/hwasan/hwasan.h
The file was modified/compiler-rt/trunk/lib/hwasan/hwasan_allocator.cpptrunk/lib/hwasan/hwasan_allocator.cpp
The file was modified/compiler-rt/trunk/lib/hwasan/hwasan_interceptors.cpptrunk/lib/hwasan/hwasan_interceptors.cpp
The file was modified/compiler-rt/trunk/lib/hwasan/hwasan_interface_internal.htrunk/lib/hwasan/hwasan_interface_internal.h
The file was modified/compiler-rt/trunk/lib/lsan/lsan_allocator.cctrunk/lib/lsan/lsan_allocator.cc
The file was modified/compiler-rt/trunk/lib/lsan/lsan_allocator.htrunk/lib/lsan/lsan_allocator.h
The file was modified/compiler-rt/trunk/lib/lsan/lsan_interceptors.cctrunk/lib/lsan/lsan_interceptors.cc
The file was modified/compiler-rt/trunk/lib/msan/msan.htrunk/lib/msan/msan.h
The file was modified/compiler-rt/trunk/lib/msan/msan_allocator.cctrunk/lib/msan/msan_allocator.cc
The file was modified/compiler-rt/trunk/lib/msan/msan_interceptors.cctrunk/lib/msan/msan_interceptors.cc
The file was modified/compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator.cctrunk/lib/sanitizer_common/sanitizer_allocator.cc
The file was modified/compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator_internal.htrunk/lib/sanitizer_common/sanitizer_allocator_internal.h
The file was modified/compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator_report.cctrunk/lib/sanitizer_common/sanitizer_allocator_report.cc
The file was modified/compiler-rt/trunk/lib/sanitizer_common/sanitizer_allocator_report.htrunk/lib/sanitizer_common/sanitizer_allocator_report.h
The file was modified/compiler-rt/trunk/lib/sanitizer_common/sanitizer_platform_interceptors.htrunk/lib/sanitizer_common/sanitizer_platform_interceptors.h
The file was modified/compiler-rt/trunk/lib/tsan/rtl/tsan_interceptors.cctrunk/lib/tsan/rtl/tsan_interceptors.cc
The file was modified/compiler-rt/trunk/lib/tsan/rtl/tsan_mman.cctrunk/lib/tsan/rtl/tsan_mman.cc
The file was modified/compiler-rt/trunk/lib/tsan/rtl/tsan_mman.htrunk/lib/tsan/rtl/tsan_mman.h
The file was modified/compiler-rt/trunk/test/hwasan/TestCases/realloc-test.cctrunk/test/hwasan/TestCases/realloc-test.cc
The file was modified/compiler-rt/trunk/test/hwasan/TestCases/sanitizer_malloc.cctrunk/test/hwasan/TestCases/sanitizer_malloc.cc
The file was modified/compiler-rt/trunk/test/hwasan/TestCases/sizes.cpptrunk/test/hwasan/TestCases/sizes.cpp
The file was added/compiler-rt/trunk/test/sanitizer_common/TestCases/reallocarray-overflow.cctrunk/test/sanitizer_common/TestCases/reallocarray-overflow.cc

Summary

  1. [WebAssembly] WASI support for libcxx This adds explicit support for the WASI platform to libcxx. WASI libc uses some components from musl, however it's not fully compatible with musl, so we're planning to stop using _LIBCPP_HAS_MUSL_LIBC and customize for WASI libc specifically. Differential Revision: https://reviews.llvm.org/D61336 Reviewers: sbc100, ldionne
Revision 359703 by djg:
[WebAssembly] WASI support for libcxx

This adds explicit support for the WASI platform to libcxx.

WASI libc uses some components from musl, however it's not fully compatible
with musl, so we're planning to stop using _LIBCPP_HAS_MUSL_LIBC and
customize for WASI libc specifically.

Differential Revision: https://reviews.llvm.org/D61336

Reviewers: sbc100, ldionne
Change TypePath in RepositoryPath in Workspace
The file was modified/libcxx/trunk/include/__configtrunk/include/__config
The file was modified/libcxx/trunk/include/__localetrunk/include/__locale
The file was modified/libcxx/trunk/src/include/config_elast.htrunk/src/include/config_elast.h
The file was modified/libcxx/trunk/src/thread.cpptrunk/src/thread.cpp
The file was modified/libcxx/trunk/test/support/test_macros.htrunk/test/support/test_macros.h