SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [SystemZ][FPEnv] Enable strict vector FP extends/truncations (details)
  2. [lldb] Put the headers in unittests/TestingSupport/ into modules (details)
  3. [scudo][standalone] Implement TSD registry disabling (details)
  4. [lldb][NFC] Move utility functions from ClangASTImporter and (details)
  5. [lldb/cmake] Remove support for LLDB_DISABLE_CURSES (details)
  6. [lldb] Fix an unused variable warning (details)
  7. [InstCombine] add tests for cast+gep; NFC (details)
  8. [lldb/cmake] Delete LLDB_LINKER_SUPPORTS_GROUPS (details)
  9. [OPENMP]Remove unused OPENMP_MATCH_KIND, NFC. (details)
  10. [libc++] Update feature list for NetBSD (details)
  11. [compiler-rt] [test] Disable MPROTECT on two builtin tests (details)
  12. [clang-format] C# formatting a class with inheritance followed by an (details)
  13. [lldb][NFC] Remove redundant ASTContext args to CopyDecl/DeportDecl (details)
  14. Revert "[ARM] Improve codegen of volatile load/store of i64" (details)
  15. [SystemZ]  Bugfix and improve the handling of CC values. (details)
  16. Temporarily revert "Reapply [LVI] Normalize pointer behavior" and "[LVI] (details)
  17. llvm-symbolizer: support DW_FORM_loclistx locations. (details)
  18. [lldb][NFC] Remove utility methods in TestClangASTImporter (details)
  19. [SystemZ]  Add a mapping from "select register" to "load on condition" (details)
  20. [AArch64][SVE] Replace integer immediate intrinsics with splat vector (details)
  21. ThreadPlanTracer::TracingStarted can't call virtual methods on (details)
  22. [objc_direct] Tigthen checks for direct methods (details)
  23. In 'thread step-out' command, only insert a breakpoint in executable (details)
  24. [lldb/Lua] Implement a Simple Lua Script Interpreter Prototype (details)
  25. [X86] Fix a KNL miscompile caused by combineSetCC swapping LHS/RHS (details)
  26. [PPC32] Emit R_PPC_PLTREL24 for calls to dso_local ifunc (details)
  27. [NFC][Driver] Add dummy compiler-rt sanitizer dylibs for Darwin. (details)
  28. Align branches within 32-Byte boundary (NOP padding) (details)
  29. Apply the alignment specifier attribute to anonymous unions and structs. (details)
  30. [attributes][analyzer] Add annotations for handles. (details)
  31. Comment and adjust style in the newly introduced MCBoundaryAlignFragment (details)
  32. Fix a memory leak introduced w/the instruction padding support in (details)
Commit ede8293d7d9d4623be5a911cc076c1dfd7810b8c by ulrich.weigand
[SystemZ][FPEnv] Enable strict vector FP extends/truncations
The back-end currently has special DAGCombine code to detect cases where
two floating-point extend or truncate operations can be combined into a
single vector operation.
This patch extends that support to also handle strict FP operations.
Note that currently only the case where both operations have the same
input chain are supported.  This already suffices to cover the common
case where the operations result from scalarizing a non-legal vector
type.  More general cases can be supported in the future.
The file was modifiedllvm/lib/Target/SystemZ/SystemZOperators.td
The file was modifiedllvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrVector.td
The file was addedllvm/test/CodeGen/SystemZ/vec-strict-conv-02.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZISelLowering.h
Commit a9c845395f827055b951532451df1ea50184c21d by Raphael Isemann
[lldb] Put the headers in unittests/TestingSupport/ into modules
The file was addedlldb/unittests/TestingSupport/module.modulemap
Commit 77e906ac78abda8bb2bdcc223e4b5c457f08bb04 by kostyak
[scudo][standalone] Implement TSD registry disabling
Summary: In order to implement `malloc_{enable|disable}` we were just
disabling
(or really locking) the Primary and the Secondary. That meant that
allocations could still be serviced from the TSD as long as the cache
wouldn't have to be filled from the Primary.
This wasn't working out for Android tests, so this change implements
registry disabling (eg: locking) so that `getTSDAndLock` doesn't return
a TSD if the allocator is disabled. This also means that the Primary
doesn't have to be disabled in this situation.
For the Shared Registry, we loop through all the TSDs and lock them. For
the Exclusive Registry, we add a `Disabled` boolean to the Registry that
forces `getTSDAndLock` to use the Fallback TSD instead of the thread
local one. Disabling the Registry is then done by locking the Fallback
TSD and setting the boolean in question (I don't think this needed an
atomic variable but I might be wrong).
I clang-formatted the whole thing as usual hence the couple of extra
whiteline changes in this CL.
Reviewers: cferris, pcc, hctim, morehouse, eugenis
Subscribers: jfb, #sanitizers, llvm-commits
Tags: #sanitizers, #llvm
Differential Revision: https://reviews.llvm.org/D71719
The file was modifiedcompiler-rt/lib/scudo/standalone/combined.h
The file was modifiedcompiler-rt/lib/scudo/standalone/flags.cpp
The file was modifiedcompiler-rt/lib/scudo/standalone/tsd_shared.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tsd_exclusive.h
The file was modifiedcompiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
Commit aaa34bc0bd1aeb7271ba0ce2c4f3dfba5dbae8e2 by Raphael Isemann
[lldb][NFC] Move utility functions from ClangASTImporter and
ClangExpressionDeclMap to own header
The file was modifiedlldb/unittests/Symbol/TestClangASTImporter.cpp
The file was modifiedlldb/unittests/Expression/ClangExpressionDeclMapTest.cpp
The file was modifiedlldb/unittests/TestingSupport/module.modulemap
The file was addedlldb/unittests/TestingSupport/Symbol/ClangTestUtils.h
Commit ca567ad6ffc1fbbd5e354ab80e426c052d027811 by pavel
[lldb/cmake] Remove support for LLDB_DISABLE_CURSES
The buildbot which necessitated this is fixed.
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
Commit 32a34289597c7b0cc60b6c90b4222b44bef302d5 by pavel
[lldb] Fix an unused variable warning
The file was modifiedlldb/source/Core/FormatEntity.cpp
Commit 0b421d842da55cf13b083069602a54b5e381b0fd by spatel
[InstCombine] add tests for cast+gep; NFC
PR44321: https://bugs.llvm.org/show_bug.cgi?id=44321
The file was modifiedllvm/test/Transforms/InstCombine/gep-vector.ll
Commit 40aa418223f36e0b9bfa457606e0d8f50aa4fe66 by pavel
[lldb/cmake] Delete LLDB_LINKER_SUPPORTS_GROUPS
The variable is unused.
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
Commit ff92c56ef97c62e6350531fd45ec1ad36ed25a3c by a.bataev
[OPENMP]Remove unused OPENMP_MATCH_KIND, NFC.
The file was modifiedclang/include/clang/Basic/OpenMPKinds.def
Commit e1882af9f6701c2ddcd2853ffeff456d5a8bf8e3 by mgorny
[libc++] Update feature list for NetBSD
Add NetBSD to the same feature list as Fuchsia since it matches in
available features, effectively enabling aligned_alloc(), timespec_get()
and C11 features.  Remove now-duplicate declaration of quick_exit()
support.
Differential Revision: https://reviews.llvm.org/D71511
The file was modifiedlibcxx/test/support/test_macros.h
The file was modifiedlibcxx/include/__config
Commit 190b9110c23c0c742602d686e4a5bcff3d94fba1 by mgorny
[compiler-rt] [test] Disable MPROTECT on two builtin tests
Introduce a new %run_nomprotect substitution to run tests that do not
work with MPROTECT enabled.  This uses paxctl via a wrapper on NetBSD,
and evaluates to plain %run on other systems.
Differential Revision: https://reviews.llvm.org/D71513
The file was modifiedcompiler-rt/test/builtins/Unit/clear_cache_test.c
The file was modifiedcompiler-rt/test/builtins/Unit/enable_execute_stack_test.c
The file was addedcompiler-rt/test/sanitizer_common/netbsd_commands/run_nomprotect.sh
The file was modifiedcompiler-rt/test/lit.common.cfg.py
Commit 2f209ccfbe5e6b33088763b1e022ba876fb0f35c by mydeveloperday
[clang-format] C# formatting a class with inheritance followed by an
attribute specifier assume its a braces initializer
Summary: https://bugs.llvm.org/show_bug.cgi?id=44340
The rule that prevents `... {} [[....]]`  being treated as a braced
initializer for C++ causes problems for C# with attributes, causing it
to be incorrectly classified and then messing up the subsequent
formatting. (see bug for details of formatting)
Reviewers: mitchell-stellar, klimek, sammccall
Reviewed By: mitchell-stellar
Subscribers: cfe-commits
Tags: #clang-format, #clang
Differential Revision: https://reviews.llvm.org/D71769
The file was modifiedclang/unittests/Format/FormatTestCSharp.cpp
The file was modifiedclang/lib/Format/UnwrappedLineParser.cpp
Commit 6be76f491fcbb2a8476e58cb8d3310155c71e74a by Raphael Isemann
[lldb][NFC] Remove redundant ASTContext args to CopyDecl/DeportDecl
We already pass a Decl here and the additional ASTContext needs to match
the Decl. We might as well just pass the Decl and then extract the
ASTContext from that.
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ASTResultSynthesizer.cpp
The file was modifiedlldb/source/Symbol/ClangASTImporter.cpp
The file was modifiedlldb/source/Plugins/ExpressionParser/Clang/ClangASTSource.cpp
The file was modifiedlldb/unittests/Expression/ClangExpressionDeclMapTest.cpp
The file was modifiedlldb/include/lldb/Symbol/ClangASTImporter.h
The file was modifiedlldb/unittests/Symbol/TestClangASTImporter.cpp
Commit 2ff5a596cbfd8fcf760f0deb62e52f5d378f5776 by victor.campos
Revert "[ARM] Improve codegen of volatile load/store of i64"
This reverts commit bbcf1c3496ce2bd1ed87e8fb15ad896e279633ce.
The file was removedllvm/test/CodeGen/ARM/i64_volatile_load_store.ll
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelDAGToDAG.cpp
The file was modifiedllvm/lib/Target/ARM/ARMISelLowering.h
The file was modifiedllvm/lib/Target/ARM/ARMInstrInfo.td
The file was modifiedllvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp
The file was modifiedllvm/lib/Target/ARM/ARMInstrThumb2.td
Commit 3174683e21cc5ca9f026549ddbdf14460de0d54f by paulsson
[SystemZ]  Bugfix and improve the handling of CC values.
It was recently discovered that the handling of CC values was actually
broken since overflow was not properly handled ('nsw' flag not checked
for).
Add and sub instructions now have a new target specific instruction flag
named SystemZII::CCIfNoSignedWrap. It means that the CC result can be
used instead of a compare with 0, but only if the instruction has the
'nsw' flag set.
This patch also adds the improvements of conversion to logical
instructions and the analyzing of add with immediates, to be able to
eliminate more compares.
Review: Ulrich Weigand https://reviews.llvm.org/D66868
The file was addedllvm/test/CodeGen/SystemZ/int-cmp-56.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrFormats.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
The file was modifiedllvm/test/CodeGen/SystemZ/int-cmp-44.ll
The file was modifiedllvm/lib/Target/SystemZ/SystemZ.h
The file was modifiedllvm/lib/Target/SystemZ/SystemZElimCompare.cpp
The file was addedllvm/test/CodeGen/SystemZ/int-cmp-58.mir
The file was modifiedllvm/test/CodeGen/SystemZ/int-cmp-45.ll
The file was addedllvm/test/CodeGen/SystemZ/int-cmp-57.ll
Commit 02a6b0bc3b54571f890a531e8c16b4c1173c55d0 by rupprecht
Temporarily revert "Reapply [LVI] Normalize pointer behavior" and "[LVI]
Restructure caching"
This reverts commits 7e18aeba5062cd4324a9efb7bc25c9dbc4a34c2c (D70376)
21fbd5587cdfa11dabb3aeb0ead2d3d5fd0b490d (D69914) due to increased
memory usage.
The file was modifiedllvm/test/Transforms/JumpThreading/combine-metadata.ll
The file was modifiedllvm/lib/Analysis/LazyValueInfo.cpp
Commit b538a2aa071485a1fc13a8ef583d31db3381fec0 by eugenis
llvm-symbolizer: support DW_FORM_loclistx locations.
Summary: With -gdwarf-5 local variable locations are emitted as
DW_FORM_loclistx form instead of the regular DW_FORM_sec_offset. Teach
DWARFDie::getLocations to understand the new format and use it in
llvm-symbolizer "FRAME" command.
Reviewers: pcc, jdoerfert
Subscribers: srhines, aprantl, hiraditya, rupprecht, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D70756
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFDie.cpp
The file was modifiedllvm/lib/DebugInfo/DWARF/DWARFContext.cpp
The file was addedllvm/test/DebugInfo/AArch64/frame-loclistx.s
Commit a805e0fb18ca3b85712a587b72e5048e78d8f1da by Raphael Isemann
[lldb][NFC] Remove utility methods in TestClangASTImporter
We have a central header for all these methods so we can just use those
for creating ClangASTContexts.
The file was modifiedlldb/unittests/Symbol/TestClangASTImporter.cpp
Commit 9fcebad5e5c1530d6d63a2b3d137dd1473b3b615 by paulsson
[SystemZ]  Add a mapping from "select register" to "load on condition"
(2-addr).
The SELR(Mux) instructions can be converted to two-address form as
LOCR(Mux) instructions whenever one of the sources are the same reg as
dest. By adding this mapping in getTwoOperandOpcode(), we get:
- Two-address hints in getRegAllocationHints() for select register
instructions.
- No need anymore for special handling in SystemZShortenInst.cpp -
shortenSelect() removed.
The two-address hints are now added before the GRX32 hints, which should
be preferred.
Review: Ulrich Weigand https://reviews.llvm.org/D68870
The file was addedllvm/test/CodeGen/SystemZ/cond-move-regalloc-hints-02.mir
The file was modifiedllvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrFormats.td
The file was modifiedllvm/lib/Target/SystemZ/SystemZShortenInst.cpp
The file was modifiedllvm/lib/Target/SystemZ/SystemZInstrInfo.td
The file was modifiedllvm/test/CodeGen/SystemZ/cond-move-08.mir
Commit 15bfd2cd543804caccd2fb485af4ea55b55006f1 by danilo.carvalho.grael
[AArch64][SVE] Replace integer immediate intrinsics with splat vector
variant
Summary: Replace the integer immediate intrisics with splat vector
variants so they can be applied as optimizations for the C/C++
intrinsics.
Reviewers: sdesmalen, huntergr, rengolin, efriedma, c-rhodes, mgudim,
kmclaughlin
Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl,
llvm-commits, amehsan
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D71614
The file was modifiedllvm/test/CodeGen/AArch64/sve-gather-scatter-dag-combine.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
The file was modifiedllvm/test/CodeGen/AArch64/sve-int-imm.ll
The file was modifiedllvm/lib/Target/AArch64/SVEInstrFormats.td
The file was modifiedllvm/include/llvm/IR/IntrinsicsAArch64.td
The file was modifiedllvm/test/CodeGen/AArch64/sve-int-log-imm.ll
Commit 810c3cfa664b38b27bc30afaadab3d775cb17922 by jingham
    ThreadPlanTracer::TracingStarted can't call virtual methods on
Thread.
    TracingStarted gets called in the Thread constructor, which means
you can't
   call a virtual method of the class.  So delay setting up the
m_register_values
   till you need them.  NFC as lldb just crashes if you don't do this.
    The thread tracing is an only occasionally useful feature, and it
only sort
   of works.  I'm not adding tests etc. at this point, I'm just poking
at it a
   bit.  If I get it working better I'll write tests and so forth.
The file was modifiedlldb/source/Target/ThreadPlanTracer.cpp
Commit 42f9d0c0bee32a1a48a45c039988d27115f30da9 by phabouzit
[objc_direct] Tigthen checks for direct methods
Because the name of a direct method must be agreed upon by the caller
and the implementation, certain bad practices that one can get away with
when using dynamism are fatal with direct methods.
To avoid really weird and unscruttable linker error, tighten the
front-end error reporting.
Rule 1:
Direct methods can only have at most one declaration in an @interface
container. Any redeclaration is strictly forbidden.
  Today some amount of redeclaration is tolerated between the main
interface and categories for dynamic methods, but we can't have that.
Rule 2:
Direct method implementations can only be declared in a matching
@interface container: when implemented in the primary @implementation
then the declaration must be in the primary @interface or an
extension, and when implemented in a category, the declaration must be
in the @interface for the same category.
Also fix another issue with ObjCMethod::getCanonicalDecl(): when an
implementation lives in the primary @interface, then its canonical
declaration can be in any extension, even when it's not an accessor.
Add Sema tests to cover the new errors, and CG tests to beef up testing
around function names for categories and extensions.
Radar-Id: <rdar://problem/58054563>
Differential Revision: https://reviews.llvm.org/D71694
The file was modifiedclang/lib/CodeGen/CGObjCMac.cpp
The file was addedclang/test/SemaObjC/method-direct-one-definition.m
The file was modifiedclang/lib/Sema/SemaDeclObjC.cpp
The file was modifiedclang/test/CodeGenObjC/direct-method.m
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/AST/DeclObjC.cpp
Commit 2a42a5a2f4144cd99812ad0d230480f94a1d1c92 by jingham
In 'thread step-out' command, only insert a breakpoint in executable
memory.
Previously, if the current function had a nonstandard stack layout/ABI,
and had a valid data pointer in the location where the return address is
usually located, data corruption would occur when the breakpoint was
written. This could lead to an incorrectly reported crash or silent
corruption of the program's state. Now, if the above check fails, the
command safely aborts.
Differential Revision: https://reviews.llvm.org/D71372
The file was addedlldb/test/Shell/Unwind/Inputs/thread-step-out-ret-addr-check.s
The file was modifiedlldb/source/Target/ThreadPlanStepOut.cpp
The file was modifiedlldb/include/lldb/Target/ThreadPlanStepOut.h
The file was addedlldb/test/Shell/Unwind/thread-step-out-ret-addr-check.test
Commit 2861324208e13846eb306f01b32448f94177cc3b by Jonas Devlieghere
[lldb/Lua] Implement a Simple Lua Script Interpreter Prototype
This implements a very elementary Lua script interpreter. It supports
running a single command as well as running interactively. It uses
editline if available. It's still missing a bunch of stuff though. Some
things that I intentionally ingored for now are that I/O isn't properly
hooked up (so every print goes to stdout) and the non-editline support
which is not handling a bunch of corner cases. The latter is a matter of
reusing existing code in the Python interpreter.
Discussion on the mailing list:
http://lists.llvm.org/pipermail/lldb-dev/2019-December/015812.html
Differential revision: https://reviews.llvm.org/D71234
The file was modifiedlldb/test/Shell/lit.cfg.py
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp
The file was modifiedlldb/include/lldb/Core/IOHandler.h
The file was modifiedlldb/unittests/ScriptInterpreter/CMakeLists.txt
The file was addedlldb/unittests/ScriptInterpreter/Lua/CMakeLists.txt
The file was addedlldb/source/Plugins/ScriptInterpreter/Lua/Lua.cpp
The file was modifiedlldb/source/Plugins/ScriptInterpreter/Lua/CMakeLists.txt
The file was addedlldb/source/Plugins/ScriptInterpreter/Lua/Lua.h
The file was addedlldb/unittests/ScriptInterpreter/Lua/LuaTests.cpp
The file was modifiedlldb/cmake/modules/LLDBConfig.cmake
The file was addedlldb/test/Shell/ScriptInterpreter/Lua/lua.test
The file was modifiedlldb/test/Shell/lit.site.cfg.py.in
The file was modifiedlldb/test/CMakeLists.txt
The file was addedlldb/unittests/ScriptInterpreter/Lua/ScriptInterpreterTests.cpp
Commit de2378b4f3c4c88eae412a30a8bfaec82f54d1b7 by craig.topper
[X86] Fix a KNL miscompile caused by combineSetCC swapping LHS/RHS
variables before a later use.
The setcc operands are copied into LHS and RHS variables at the top of
the function. We also capture the condition code.
A later piece of code swaps the operands and changing the CC variable as
part of a canonicalization to make some other checks simpler. But we
might not make the transform we canonicalized for. So we continue on
through the function where we can use the swapped LHS/RHS variables and
access the original condition code operand instead of the modified CC
variable. This leads to a setcc being created with the original
condition code, but with swapped operands.
To mitigate this, this patch does a couple things. The LHS/RHS/CC
variables are made const to keep them from being modified like this
again. The transform that needs the swap now uses temporary copies of
the variables. And the transform that used the original condition code
operand has been altered to use the CC variable we cached originally.
Either of these changes are enough to fix the issue, but doing both to
make this code very safe.
I also considered rewriting the swap code in some way to check both
permutations without explicitly swapping or needing temporary variables,
but held off on that.
Differential Revision: https://reviews.llvm.org/D71736
The file was modifiedllvm/test/CodeGen/X86/avx512-vec-cmp.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit e8054f0933701a885a42e4a240f050402d7930e0 by maskray
[PPC32] Emit R_PPC_PLTREL24 for calls to dso_local ifunc
  static void *ifunc(void) __attribute__((ifunc("resolver")));
void foo() { ifunc(); }
The relocation produced by the ifunc() call:
1. gcc -msecure-plt -fPIC => R_PPC_PLTREL24 r_addend=0x8000 2. gcc
-msecure-plt -PIE => R_PPC_PLTREL24 r_addend=0x8000 3. clang
-msecure-plt -fPIC => R_PPC_PLTREL24 r_addend=0x8000 4. clang
-msecure-plt -fPIE => R_PPC_REL24
4 is incorrect. The R_PPC_REL24 needs a call stub due to ifunc. If this
relocation is mixed with other R_PPC_PLTREL24(r_addend=0x8000) in a
function, both GNU ld and lld (after D71621 fix) may produce a wrong
result.
This patch fixes 4 to use R_PPC_PLTREL24, which matches GCC. Both GNU ld
and lld (after D71621) will be happy.
Reviewed By: sfertile
Differential Revision: https://reviews.llvm.org/D71649
The file was modifiedllvm/lib/Target/PowerPC/PPCISelLowering.cpp
The file was addedllvm/test/CodeGen/PowerPC/ifunc.ll
Commit 03512b267d9abd054d56c6d5fa118e78184cf015 by dan
[NFC][Driver] Add dummy compiler-rt sanitizer dylibs for Darwin.
This adds dummy files to the test resource directory used by the Clang
driver tests.
rdar://problem/58118584
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_ios_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_tvos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_watchos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_ios_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_osx_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_iossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_iossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_watchossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_ios_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_watchossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_tvos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_osx_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.tsan_iossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_iossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_osx_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.tsan_osx_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.tsan_tvossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_watchossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_tvossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_ios_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_tvos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_tvos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_tvossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_iossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_watchos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_watchos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.asan_watchos_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_minimal_tvossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.ubsan_watchossim_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_osx_dynamic.dylib
The file was addedclang/test/Driver/Inputs/resource_dir/lib/darwin/libclang_rt.lsan_tvossim_dynamic.dylib
Commit 14fc20ca62821b5f85582bf76a467d412248c248 by listmail
Align branches within 32-Byte boundary (NOP padding)
WARNING: If you're looking at this patch because you're looking for a
full performace mitigation of the Intel JCC Erratum, this is not it!
This is a preliminary patch on the patch towards mitigating the
performance regressions caused by Intel's microcode update for Jump
Conditional Code Erratum.  For context, see:
https://www.intel.com/content/www/us/en/support/articles/000055650.html
The patch adds the required assembler infrastructure and command line
options needed to exercise the logic for INTERNAL TESTING.  These are
NOT public flags, and should not be used for anything other than LLVM's
own testing/debugging purposes.  They are likely to change both in
spelling and meaning.
WARNING: This patch is knowingly incorrect in some cornercases.  We
need, and do not yet provide, a mechanism to selective enable/disable
the padding. Conversation on this will continue in parellel with work on
extending this infrastructure to support prefix padding.
The goal here is to have the assembler align specific instructions such
that they neither cross or end at a 32 byte boundary.  The impacted
instructions are: a. Conditional jump. b. Fused conditional jump. c.
Unconditional jump. d. Indirect jump. e. Ret. f. Call.
The new options for llvm-mc are:
   -x86-align-branch-boundary=NUM aligns branches within NUM byte
boundary.
   -x86-align-branch=TYPE[+TYPE...] specifies types of branches to
align.
A new MCFragment type, MCBoundaryAlignFragment, is added, which may emit
NOP to align the fused/unfused branch.
alignBranchesBegin inserts MCBoundaryAlignFragment before instructions,
alignBranchesEnd marks the end of the branch to be aligned,
relaxBoundaryAlign grows or shrinks sizes of NOP to align the target
branch.
Nop padding is disabled when the instruction may be rewritten by the
linker, such as TLS Call.
Process Note: I am landing a patch by skan as it has been LGTMed, and
continuing to iterate on the review is simply slowing us down at this
point. We can and will continue to iterate in tree.
Patch By: skan Differential Revision: https://reviews.llvm.org/D70157
The file was addedllvm/test/MC/X86/align-branch-64-5a.s
The file was modifiedllvm/include/llvm/MC/MCAsmBackend.h
The file was addedllvm/test/MC/X86/align-branch-64-3a.s
The file was modifiedllvm/lib/MC/MCFragment.cpp
The file was addedllvm/test/MC/X86/align-branch-64-1d.s
The file was modifiedllvm/lib/MC/MCObjectStreamer.cpp
The file was addedllvm/test/MC/X86/align-branch-64-2a.s
The file was addedllvm/test/MC/X86/align-branch-64-2c.s
The file was addedllvm/test/MC/X86/align-branch-64-5b.s
The file was addedllvm/test/MC/X86/align-branch-32-1a.s
The file was addedllvm/test/MC/X86/align-branch-64-1a.s
The file was modifiedllvm/include/llvm/MC/MCAssembler.h
The file was modifiedllvm/lib/MC/MCAssembler.cpp
The file was addedllvm/test/MC/X86/align-branch-64-4a.s
The file was modifiedllvm/include/llvm/MC/MCFragment.h
The file was modifiedllvm/include/llvm/MC/MCObjectStreamer.h
The file was addedllvm/test/MC/X86/align-branch-64-1b.s
The file was addedllvm/test/MC/X86/align-branch-64-2b.s
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp
The file was addedllvm/test/MC/X86/align-branch-64-1c.s
Commit 304d1304b7bac190b6c9733eb07be284bfc17030 by aaron
Apply the alignment specifier attribute to anonymous unions and structs.
The file was modifiedclang/lib/Sema/SemaDecl.cpp
The file was addedclang/test/AST/pr43983.cpp
Commit fe17b30a79572f0d50fe78f6a07d5194cbf90860 by xazax
[attributes][analyzer] Add annotations for handles.
These annotations will be used in an upcomming static analyzer check
that finds handle leaks, use after releases, and double releases.
Differential Revision: https://reviews.llvm.org/D70469
The file was modifiedclang/test/Misc/pragma-attribute-supported-attributes-list.test
The file was modifiedclang/lib/AST/TypePrinter.cpp
The file was modifiedclang/include/clang/Basic/Attr.td
The file was modifiedclang/include/clang/Basic/DiagnosticSemaKinds.td
The file was modifiedclang/lib/Sema/SemaDeclAttr.cpp
The file was modifiedclang/lib/Sema/SemaType.cpp
The file was modifiedclang/include/clang/Basic/AttrDocs.td
The file was addedclang/test/Sema/attr-handles.cpp
Commit 8b725f0459eee468ed7f9935fba3278fcb4997b1 by listmail
Comment and adjust style in the newly introduced MCBoundaryAlignFragment
infrastructure.  More to follow.
The file was modifiedllvm/include/llvm/MC/MCFragment.h
The file was modifiedllvm/include/llvm/MC/MCAsmBackend.h
Commit 4024d49edc1598a6f8017df541147b38bf1e2818 by listmail
Fix a memory leak introduced w/the instruction padding support in
rG14fc20ca6282
Should have caught this in review, but only noticed when addressing post
commit style items.  We were creating a new instance of the
X86MCInstrInfo class, and then never reclaiming the memory.  This wasn't
even conditional on the new off by default flags, so it was an
unconditional leak.
The file was modifiedllvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp