Revision
334388
by hans:
[MS ABI] Mangle unnamed empty enums (PR37723) Differential Revision: https://reviews.llvm.org/D47875 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /cfe/trunk/lib/AST/MicrosoftMangle.cpp (diff) | clang.src/lib/AST/MicrosoftMangle.cpp |
 | /cfe/trunk/test/CodeGenCXX/mangle-ms-cxx11.cpp (diff) | clang.src/test/CodeGenCXX/mangle-ms-cxx11.cpp |
Revision
334387
by ctopper:
[X86] Add encoding tests for avx5124fmaps and avx5124vnni instructions. I forgot to git add these in r333812 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/test/MC/X86/avx5124fmaps-encoding.s | llvm.src/test/MC/X86/avx5124fmaps-encoding.s |
 | /llvm/trunk/test/MC/X86/avx5124vnniw-encoding.s | llvm.src/test/MC/X86/avx5124vnniw-encoding.s |
Revision
334386
by ctopper:
[X86] Add test files for upgrade of vbmi2 expand load and compress store intrinsics that was done in r334381. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/test/CodeGen/X86/avx512vbmi2-intrinsics-upgrade.ll | llvm.src/test/CodeGen/X86/avx512vbmi2-intrinsics-upgrade.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vbmi2vl-intrinsics-upgrade.ll | llvm.src/test/CodeGen/X86/avx512vbmi2vl-intrinsics-upgrade.ll |
Revision
334385
by ctopper:
[X86] Remove masking from dbpsadbw builtins, use select builtin instead. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /cfe/trunk/include/clang/Basic/BuiltinsX86.def (diff) | clang.src/include/clang/Basic/BuiltinsX86.def |
 | /cfe/trunk/lib/Headers/avx512bwintrin.h (diff) | clang.src/lib/Headers/avx512bwintrin.h |
 | /cfe/trunk/lib/Headers/avx512vlbwintrin.h (diff) | clang.src/lib/Headers/avx512vlbwintrin.h |
 | /cfe/trunk/lib/Sema/SemaChecking.cpp (diff) | clang.src/lib/Sema/SemaChecking.cpp |
 | /cfe/trunk/test/CodeGen/avx512bw-builtins.c (diff) | clang.src/test/CodeGen/avx512bw-builtins.c |
 | /cfe/trunk/test/CodeGen/avx512vlbw-builtins.c (diff) | clang.src/test/CodeGen/avx512vlbw-builtins.c |
Revision
334384
by ctopper:
[X86] Remove masking from dbpsadbw intrinsics, use select in IR instead. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/include/llvm/IR/IntrinsicsX86.td (diff) | llvm.src/include/llvm/IR/IntrinsicsX86.td |
 | /llvm/trunk/lib/IR/AutoUpgrade.cpp (diff) | llvm.src/lib/IR/AutoUpgrade.cpp |
 | /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff) | llvm.src/lib/Target/X86/X86ISelLowering.cpp |
 | /llvm/trunk/lib/Target/X86/X86IntrinsicsInfo.h (diff) | llvm.src/lib/Target/X86/X86IntrinsicsInfo.h |
 | /llvm/trunk/test/CodeGen/X86/avx512bw-intrinsics-upgrade.ll (diff) | llvm.src/test/CodeGen/X86/avx512bw-intrinsics-upgrade.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512bw-intrinsics.ll (diff) | llvm.src/test/CodeGen/X86/avx512bw-intrinsics.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512bwvl-intrinsics-upgrade.ll (diff) | llvm.src/test/CodeGen/X86/avx512bwvl-intrinsics-upgrade.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512bwvl-intrinsics.ll (diff) | llvm.src/test/CodeGen/X86/avx512bwvl-intrinsics.ll |
Revision
334383
by dcederman:
[Sparc] Add support for 13-bit PIC Summary: When compiling with -fpic, in contrast to -fPIC, use only the immediate field to index into the GOT. This saves space if the GOT is known to be small. The linker will warn if the GOT is too large for this method. Reviewers: jyknight, venkatra Reviewed By: jyknight Subscribers: brad, fedor.sergeev, jrtc27, llvm-commits Differential Revision: https://reviews.llvm.org/D47136 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp (diff) | llvm.src/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp |
 | /llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp (diff) | llvm.src/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp |
 | /llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp (diff) | llvm.src/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp |
 | /llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h (diff) | llvm.src/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h |
 | /llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp (diff) | llvm.src/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp |
 | /llvm/trunk/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h (diff) | llvm.src/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h |
 | /llvm/trunk/lib/Target/Sparc/SparcISelLowering.cpp (diff) | llvm.src/lib/Target/Sparc/SparcISelLowering.cpp |
 | /llvm/trunk/test/CodeGen/SPARC/pic.ll | llvm.src/test/CodeGen/SPARC/pic.ll |
 | /llvm/trunk/test/MC/Sparc/sparc-pic.s (diff) | llvm.src/test/MC/Sparc/sparc-pic.s |
 | /llvm/trunk/test/MC/Sparc/sparc-relocations.s (diff) | llvm.src/test/MC/Sparc/sparc-relocations.s |
Revision
334382
by bwyma:
[CodeView] Omit forward references for unnamed structs and unions Codeview references to unnamed structs and unions are expected to refer to the complete type definition instead of a forward reference so Visual Studio can resolve the type properly. Differential Revision: https://reviews.llvm.org/D32498 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp (diff) | llvm.src/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp |
 | /llvm/trunk/test/DebugInfo/COFF/bitfields.ll (diff) | llvm.src/test/DebugInfo/COFF/bitfields.ll |
 | /llvm/trunk/test/DebugInfo/COFF/lambda.ll | llvm.src/test/DebugInfo/COFF/lambda.ll |
 | /llvm/trunk/test/DebugInfo/COFF/types-recursive-unnamed.ll | llvm.src/test/DebugInfo/COFF/types-recursive-unnamed.ll |
 | /llvm/trunk/test/DebugInfo/COFF/unnamed.ll | llvm.src/test/DebugInfo/COFF/unnamed.ll |
Revision
334381
by ctopper:
[X86] Remove and autoupgrade the expandload and compressstore intrinsics. We use the target independent intrinsics now. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/include/llvm/IR/IntrinsicsX86.td (diff) | llvm.src/include/llvm/IR/IntrinsicsX86.td |
 | /llvm/trunk/lib/IR/AutoUpgrade.cpp (diff) | llvm.src/lib/IR/AutoUpgrade.cpp |
 | /llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (diff) | llvm.src/lib/Target/X86/X86ISelLowering.cpp |
 | /llvm/trunk/lib/Target/X86/X86IntrinsicsInfo.h (diff) | llvm.src/lib/Target/X86/X86IntrinsicsInfo.h |
 | /llvm/trunk/test/CodeGen/X86/avx512-intrinsics-upgrade.ll (diff) | llvm.src/test/CodeGen/X86/avx512-intrinsics-upgrade.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512-intrinsics.ll (diff) | llvm.src/test/CodeGen/X86/avx512-intrinsics.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vbmi2-intrinsics.ll (diff) | llvm.src/test/CodeGen/X86/avx512vbmi2-intrinsics.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vbmi2vl-intrinsics.ll (diff) | llvm.src/test/CodeGen/X86/avx512vbmi2vl-intrinsics.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll (diff) | llvm.src/test/CodeGen/X86/avx512vl-intrinsics-upgrade.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vl-intrinsics.ll (diff) | llvm.src/test/CodeGen/X86/avx512vl-intrinsics.ll |
Revision
334380
by ctopper:
[TableGen] Make better use of std::map::emplace and emplace construct the object in the map rather than moving it into it. Remove a use std::map::find by remembering the return from emplace. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp (diff) | llvm.src/utils/TableGen/CodeGenDAGPatterns.cpp |
Revision
334379
by ctopper:
[TableGen] Combine two constructors by taking vectors by value instead of trying to support combininations for rvalue and lvalue references. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/utils/TableGen/CodeGenDAGPatterns.h (diff) | llvm.src/utils/TableGen/CodeGenDAGPatterns.h |
Revision
334378
by spatel:
[DAGCombiner] match vector compare and select sizes with extload operand (PR37427) This patch started off much more general and ambitious, but it's been a nightmare seeing all the ways x86 vector codegen can go wrong. So the code is still structured to allow extending easily, but it's currently limited in several ways: 1. Only handle cases with an extending load. 2. Only handle cases with a zero constant compare. 3. Ignore setcc with vector bitmask (SetCCWidth != 1) - so AVX512 should be unaffected. The motivating case from PR37427: https://bugs.llvm.org/show_bug.cgi?id=37427 ...is the 1st test, and that shows the expected win - we eliminated the unnecessary intermediate cast. There's a clear regression in the last test (sgt_zero_fp_select) because we longer recognize a 'SHRUNKBLEND' opportunity. I think that general problem is also present in sgt_zero, so I'll try to fix that in a follow-up. We need to match a sign-bit setcc from a sign-extended operand and remove it. Differential Revision: https://reviews.llvm.org/D47330 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/CodeGen/SelectionDAG/DAGCombiner.cpp (diff) | llvm.src/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
 | /llvm/trunk/test/CodeGen/X86/vsel-cmp-load.ll (diff) | llvm.src/test/CodeGen/X86/vsel-cmp-load.ll |
Revision
334377
by ctopper:
[X86] Miscellaneous fixes to get the load folding table generator to work again. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/Target/X86/X86InstrInfo.td (diff) | llvm.src/lib/Target/X86/X86InstrInfo.td |
 | /llvm/trunk/lib/Target/X86/X86InstrMPX.td (diff) | llvm.src/lib/Target/X86/X86InstrMPX.td |
 | /llvm/trunk/lib/Target/X86/X86InstrSSE.td (diff) | llvm.src/lib/Target/X86/X86InstrSSE.td |
Revision
334376
by fhahn:
Revert r334374 [TableGen] Move some shared_ptrs to avoid unnecessary copies (NFC). This breaks some builders. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp (diff) | llvm.src/utils/TableGen/CodeGenDAGPatterns.cpp |
 | /llvm/trunk/utils/TableGen/CodeGenDAGPatterns.h (diff) | llvm.src/utils/TableGen/CodeGenDAGPatterns.h |
Revision
334375
by zturner:
Attempt 3: Resubmit "[Support] Expose flattenWindowsCommandLine." I took some liberties and quoted fewer characters than before, based on an article from MSDN which says that only certain characters cause an arg to require quoting. This seems to be incorrect, though, and worse it seems to be a difference in Windows version. The bot that fails is Windows 7, and I can't reproduce the failure on Win 10. But it's definitely related to quoting and special characters, because both tests that fail have a * in the argument, which is one of the special characters that would cause an argument to be quoted before but not any longer after the new patch. Since I don't have Win 7, all I can do is just guess that I need to restore the old quoting rules. So this patch does that in hopes that it fixes the problem on Windows 7. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/include/llvm/Support/Program.h (diff) | llvm.src/include/llvm/Support/Program.h |
 | /llvm/trunk/lib/Support/Program.cpp (diff) | llvm.src/lib/Support/Program.cpp |
 | /llvm/trunk/lib/Support/Unix/Program.inc (diff) | llvm.src/lib/Support/Unix/Program.inc |
 | /llvm/trunk/lib/Support/Windows/Path.inc (diff) | llvm.src/lib/Support/Windows/Path.inc |
 | /llvm/trunk/lib/Support/Windows/Program.inc (diff) | llvm.src/lib/Support/Windows/Program.inc |
Revision
334374
by fhahn:
[TableGen] Move some shared_ptrs to avoid unnecessary copies (NFC). Those changes were suggested post-commit for D47463. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/utils/TableGen/CodeGenDAGPatterns.cpp (diff) | llvm.src/utils/TableGen/CodeGenDAGPatterns.cpp |
 | /llvm/trunk/utils/TableGen/CodeGenDAGPatterns.h (diff) | llvm.src/utils/TableGen/CodeGenDAGPatterns.h |
Revision
334373
by lebedevri:
Revert rL334371 / D47980: "[InstCombine] Fold (x << y) >> y -> x & (-1 >> y)" test/Transforms/InstCombine/AMDGPU/amdgcn-intrinsics.ll broke, and i did not notice because i did not build that backend. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/Transforms/InstCombine/InstCombineShifts.cpp (diff) | llvm.src/lib/Transforms/InstCombine/InstCombineShifts.cpp |
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll |
Revision
334372
by lebedevri:
[InstCombine] Fold (x >> y) << y -> x & (-1 << y) Summary: We already do it for matching splat constants, but not just values. Further improvements for non-matching splat constants, as noted in https://reviews.llvm.org/D46760#1123713 will be needed, but i'd prefer to do that as a follow-up. https://bugs.llvm.org/show_bug.cgi?id=37603 https://rise4fun.com/Alive/cplX https://rise4fun.com/Alive/0HF Reviewers: spatel, craig.topper Reviewed By: spatel Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D47981 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/Transforms/InstCombine/InstCombineShifts.cpp (diff) | llvm.src/lib/Transforms/InstCombine/InstCombineShifts.cpp |
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll |
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll |
Revision
334371
by lebedevri:
[InstCombine] Fold (x << y) >> y -> x & (-1 >> y) Summary: We already do it for splat constants, but not just values. Also, undef cases are mostly non-functional. https://bugs.llvm.org/show_bug.cgi?id=37603 https://rise4fun.com/Alive/cplX Reviewers: spatel, craig.topper Reviewed By: spatel Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D47980 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/lib/Transforms/InstCombine/InstCombineShifts.cpp (diff) | llvm.src/lib/Transforms/InstCombine/InstCombineShifts.cpp |
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll |
Revision
334370
by lebedevri:
[NFC][InstCombine] Revisit tests for D47980 / D47981 once more. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-ashr-shl-to-masking.ll |
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-lshr-shl-to-masking.ll |
 | /llvm/trunk/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll (diff) | llvm.src/test/Transforms/InstCombine/canonicalize-shl-lshr-to-masking.ll |
Revision
334369
by ab:
[debuginfo-tests] Always use the system python to invoke llgdb.py. /usr/bin/env is recommended as a cross-platform way to find python. But: - we're only using lldb on darwin, where we know python (or at least, the xcrun-style shortcut) is in /usr/bin/ - the python interpreter in LLDB comes from /S/L/F: $ otool -L Contents/SharedFrameworks/LLDB.framework/LLDB | grep Python /System/Library/Frameworks/Python.framework/Versions/2.7/Python so when we use the lldb python module, it calls into the swig/python support in the lldb framework, and if there's a mismatch between the interpreter and the linked python, weird things occur. In theory, I believe this should be done by: - looking for the LLDB framework (llgdb.py does some of that) - finding the binary inside the framework - looking for the Python it was linked against (otool -L) - finding the interpreter executable inside the Python.framework But in practice, that's only different if we use a custom LLDB framework/pythonpath when running these tests, and AFAIK nobody does that right now, so the code would be dead anyway. Don't pretend we can use any arbitrary python: just use the system one. Differential Revision: https://reviews.llvm.org/D47967 |
Change Type | Path in Repository | Path in Workspace |
---|
 | /debuginfo-tests/trunk/test_debuginfo.pl (diff) | debuginfo-tests.src/test_debuginfo.pl |
Revision
334368
by ctopper:
[X86] Add expandload and compresstore fast-isel tests for avx512f and avx512vl. Update existing tests for avx512vbmi2 to use target independent intrinsics. |
Change Type | Path in Repository | Path in Workspace |
---|
 | /llvm/trunk/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll (diff) | llvm.src/test/CodeGen/X86/avx512-intrinsics-fast-isel.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vbmi2-intrinsics-fast-isel.ll (diff) | llvm.src/test/CodeGen/X86/avx512vbmi2-intrinsics-fast-isel.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vbmi2vl-intrinsics-fast-isel.ll (diff) | llvm.src/test/CodeGen/X86/avx512vbmi2vl-intrinsics-fast-isel.ll |
 | /llvm/trunk/test/CodeGen/X86/avx512vl-intrinsics-fast-isel.ll (diff) | llvm.src/test/CodeGen/X86/avx512vl-intrinsics-fast-isel.ll |