SuccessChanges

Summary

  1. [ARM] Add support for ORR and ORN instruction substitutions Recently support was added for substituting one intruction for another by negating or inverting the immediate, but ORR and ORN were missed so this patch adds them. This one is slightly different to the others in that ORN only exists in thumb, so we only do the substitution in thumb. Differential Revision: https://reviews.llvm.org/D32534
  2. Add TaskMap for iterating a function over a set of integers Summary: Many parallel tasks just want to iterate over all the possible numbers from 0 to N-1. Rather than enqueue N work items, instead just "map" the function across the requested integer space. Reviewers: clayborg, labath, tberghammer, zturner Reviewed By: clayborg, zturner Subscribers: zturner, lldb-commits Differential Revision: https://reviews.llvm.org/D32757 Patch by Scott Smith <scott.smith@purestorage.com>.
  3. [X86][AVX] Add LowerIntUnary helpers to split unary vector ops in half. NFCI. Same as LowerIntArith helpers but for unary ops instead of binary.
  4. [llvm-dwarfdump] - Print an error message if section decompression failed. llvm-dwarfdump currently prints no message if decompression fails for some reason. I noticed that during work on one of LLD patches where LLD produced an broken output. It was a bit confusing to see no output for section dumped and no any error message at all. Patch adds error message for such cases. Differential revision: https://reviews.llvm.org/D32865
  5. ABISysV_arm64: compute return value for large vectors correctly Summary: Arm64 Procedure Call Standard specifies than only vectors up to 16 bytes are stored in v0 (which makes sense, as that's the size of the register). 32-byte vector types are passed as regular structs via x8 pointer. Treat them as such. This fixes TestReturnValue for arm64-clang. I also split the test case into two so I can avoid the if(gcc) line, and annotate each test instead. (It seems the vector type tests fail with gcc only when targetting x86 arches). Reviewers: tberghammer, eugene Subscribers: aemerson, omjavaid, rengolin, srhines, lldb-commits Differential Revision: https://reviews.llvm.org/D32813
Revision 302224 by john.brawn:
[ARM] Add support for ORR and ORN instruction substitutions

Recently support was added for substituting one intruction for another by
negating or inverting the immediate, but ORR and ORN were missed so this patch
adds them.

This one is slightly different to the others in that ORN only exists in thumb,
so we only do the substitution in thumb.

Differential Revision: https://reviews.llvm.org/D32534
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/ARM/ARMInstrThumb2.td (diff)llvm-revision.src/llvm/trunk/lib/Target/ARM/ARMInstrThumb2.td
The file was modified/llvm/trunk/test/MC/ARM/negative-immediates-fail.s (diff)llvm-revision.src/llvm/trunk/test/MC/ARM/negative-immediates-fail.s
The file was modified/llvm/trunk/test/MC/ARM/negative-immediates-thumb1-fail.s (diff)llvm-revision.src/llvm/trunk/test/MC/ARM/negative-immediates-thumb1-fail.s
The file was modified/llvm/trunk/test/MC/ARM/negative-immediates.s (diff)llvm-revision.src/llvm/trunk/test/MC/ARM/negative-immediates.s
Revision 302223 by labath:
Add TaskMap for iterating a function over a set of integers

Summary:
Many parallel tasks just want to iterate over all the possible numbers from 0 to N-1.  Rather than enqueue N work items, instead just "map" the function across the requested integer space.

Reviewers: clayborg, labath, tberghammer, zturner

Reviewed By: clayborg, zturner

Subscribers: zturner, lldb-commits

Differential Revision: https://reviews.llvm.org/D32757
Patch by Scott Smith <scott.smith@purestorage.com>.
Change TypePath in RepositoryPath in Workspace
The file was modified/lldb/trunk/include/lldb/Utility/TaskPool.h (diff)llvm-revision.src/lldb/trunk/include/lldb/Utility/TaskPool.h
The file was modified/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp (diff)llvm-revision.src/lldb/trunk/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
The file was modified/lldb/trunk/source/Utility/TaskPool.cpp (diff)llvm-revision.src/lldb/trunk/source/Utility/TaskPool.cpp
The file was modified/lldb/trunk/unittests/Utility/TaskPoolTest.cpp (diff)llvm-revision.src/lldb/trunk/unittests/Utility/TaskPoolTest.cpp
Revision 302222 by rksimon:
[X86][AVX] Add LowerIntUnary helpers to split unary vector ops in half. NFCI.

Same as LowerIntArith helpers but for unary ops instead of binary.
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff)llvm-revision.src/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
Revision 302221 by grimar:
[llvm-dwarfdump] - Print an error message if section decompression failed.

llvm-dwarfdump currently prints no message if decompression fails
for some reason. I noticed that during work on one of LLD patches
where LLD produced an broken output. It was a bit confusing to see
no output for section dumped and no any error message at all.

Patch adds error message for such cases.

Differential revision: https://reviews.llvm.org/D32865
Change TypePath in RepositoryPath in Workspace
The file was modified/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFContext.h (diff)llvm-revision.src/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFContext.h
The file was modified/llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp (diff)llvm-revision.src/llvm/trunk/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was added/llvm/trunk/test/DebugInfo/Inputs/dwarfdump-decompression-error.elf-x86-64llvm-revision.src/llvm/trunk/test/DebugInfo/Inputs/dwarfdump-decompression-error.elf-x86-64
The file was added/llvm/trunk/test/DebugInfo/dwarfdump-decompression-error.testllvm-revision.src/llvm/trunk/test/DebugInfo/dwarfdump-decompression-error.test
Revision 302220 by labath:
ABISysV_arm64: compute return value for large vectors correctly

Summary:
Arm64 Procedure Call Standard specifies than only vectors up to 16 bytes
are stored in v0 (which makes sense, as that's the size of the
register). 32-byte vector types are passed as regular structs via x8
pointer. Treat them as such.

This fixes TestReturnValue for arm64-clang. I also split the test case
into two so I can avoid the if(gcc) line, and annotate each test
instead. (It seems the vector type tests fail with gcc only when
targetting x86 arches).

Reviewers: tberghammer, eugene

Subscribers: aemerson, omjavaid, rengolin, srhines, lldb-commits

Differential Revision: https://reviews.llvm.org/D32813
Change TypePath in RepositoryPath in Workspace
The file was modified/lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py (diff)llvm-revision.src/lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py
The file was modified/lldb/trunk/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp (diff)llvm-revision.src/lldb/trunk/source/Plugins/ABI/SysV-arm64/ABISysV_arm64.cpp