Commit
a52cfb352378515b53c39b0e1480c9c69954d0c3
by yedeng.yd[NFC] [ASTReader] Remove unused variables
|
 | clang/lib/Serialization/ASTReader.cpp |
Commit
fe611b1da84b9442c093739394d336af9e99c1a1
by sylvestre[clang] Move the soname declaration in a variable at the top of the file
Currently, it is a bit buried in the file even if this is pretty important for distro.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D108533
|
 | clang/tools/libclang/CMakeLists.txt |
Commit
c22bd391bc68097a4614a895e5e58d10501a2661
by sylvestrepolly: remove the old reference to svn in the doc
|
 | polly/docs/UsingPollyWithClang.rst |
Commit
6ad47e1c4fbfa8a752cb711acdf242fed3f16a68
by balazs.benics[analyzer] Catch leaking stack addresses via stack variables
Not only global variables can hold references to dead stack variables. Consider this example:
void write_stack_address_to(char **q) { char local; *q = &local; }
void test_stack() { char *p; write_stack_address_to(&p); }
The address of 'local' is assigned to 'p', which becomes a dangling pointer after 'write_stack_address_to()' returns.
The StackAddrEscapeChecker was looking for bindings in the store which referred to variables of the popped stack frame, but it only considered global variables in this regard. This patch relaxes this, catching stack variable bindings as well.
---
This patch also works for temporary objects like:
struct Bar { const int &ref; explicit Bar(int y) : ref(y) { // Okay. } // End of the constructor call, `ref` is dangling now. Warning! };
void test() { Bar{33}; // Temporary object, so the corresponding memregion is // *not* a VarRegion. }
---
The return value optimization aka. copy-elision might kick in but that is modeled by passing an imaginary CXXThisRegion which refers to the parent stack frame which is supposed to be the 'return slot'. Objects residing in the 'return slot' outlive the scope of the inner call, thus we should expect no warning about them - except if we explicitly disable copy-elision.
Reviewed By: NoQ, martong
Differential Revision: https://reviews.llvm.org/D107078
|
 | clang/test/Analysis/stack-addr-ps.cpp |
 | clang/test/Analysis/copy-elision.cpp |
 | clang/test/Analysis/cxx-uninitialized-object-ptr-ref.cpp |
 | clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp |
 | clang/test/Analysis/loop-block-counts.c |
Commit
692ebe539537812d5f7d1104ee3e8525a66fca5c
by yaron.keren[docs] Add DIA register instructions to Getting Started with Visual Studio page
Since Visual Studio 2017 the DIA libs are not registered by default, see: https://docs.microsoft.com/en-us/visualstudio/extensibility/breaking-changes-2017?view=vs-2019#change-reduce-registry-impact LLDB building instruction already specify registering these DLLs, required both the LLVM PDB tests and LLDB build.
Differential Revision: https://reviews.llvm.org/D108811
|
 | llvm/docs/GettingStartedVS.rst |
Commit
db2c6cd99c88018dff26fdb0d39ffa10ea40c4b9
by lebedev.ri[NFC][X86][MCA] AMD Zen 3: improve MULX test coverage
Latency for MULX isn't right
|
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-lo-reg-use.s |
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-read-advance.s |
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-same-regs.s |
Commit
0f04936a2d4e3ec7db681547876f7669c445af0e
by lebedev.ri[X86] AMD Zen 3: MULX produces low part of the result in 3cy, +1cy for high part
As per llvm-exegesis measurements.
|
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-lo-reg-use.s |
 | llvm/lib/Target/X86/X86ScheduleZnver3.td |
 | llvm/test/tools/llvm-mca/X86/cv_fpo_directive_no_segfault.s |
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-read-advance.s |
Commit
d4d459e7475b4bb0d15280f12ed669342fa5edcd
by lebedev.ri[X86] AMD Zen 3: MULX w/ mem operand has the same throughput as with reg op
Exegesis is faulty and sometimes when measuring throughput^-1 produces snippets that have loop-carried dependencies, which must be what caused me to incorrectly measure it originally.
After looking much more carefully, the inverse throughput should match that of the MULX w/ reg op.
As per llvm-exegesis measurements.
|
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-hi-read-advance.s |
 | llvm/test/tools/llvm-mca/X86/Znver3/resources-bmi2.s |
 | llvm/test/tools/llvm-mca/X86/Znver3/mulx-read-advance.s |
 | llvm/lib/Target/X86/X86ScheduleZnver3.td |
Commit
8d3f112f0cdbed2311aead86bcd72e763ad55255
by rickytaylor26[M68k] Update pointer data layout
Fixes PR51626.
The M68k requires that all instruction, word and long word reads are aligned to word boundaries. From the 68020 onwards, there is a performance benefit from aligning long words to long word boundaries.
The M68k uses the same data layout for pointers and integers.
In line with this, this commit updates the pointer data layout to match the layout already set for 32-bit integers: 32:16:32.
Differential Revision: https://reviews.llvm.org/D108792
|
 | clang/lib/Basic/Targets/M68k.cpp |
 | llvm/lib/Target/M68k/M68kTargetMachine.cpp |
Commit
5d9de3ea1818c247917af23b82b481ac5d40b901
by carl.ritson[DAGCombine] Allow FMA combine with both FMA and FMAD
Without this change only the preferred fusion opcode is tested when attempting to combine FMA operations. If both FMA and FMAD are available then FMA ops formed prior to legalization will not be merged post legalization as FMAD becomes the preferred fusion opcode.
Reviewed By: foad
Differential Revision: https://reviews.llvm.org/D108619
|
 | llvm/test/CodeGen/AMDGPU/fpext-free.ll |
 | llvm/test/CodeGen/AMDGPU/dagcombine-fma-fmad.ll |
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
 | llvm/test/CodeGen/AMDGPU/mad-combine.ll |
Commit
199ac3a839d900a5274da019c0dca41aac61cf2c
by nathan[NFC][X86] Sret return register cleanup
There are no paths into LowerFormalParms that have already specified the sret register. We always materialize a virtual and then assign it to the physical reg at the point of the return.
Differential Revision: https://reviews.llvm.org/D108762
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
Commit
cdbe569fb6cd34e83b695485bfc5786d54b89017
by sepavloff[X86] Implement llvm.isnan(x86_fp80) as unordered comparison
x86_fp80 format allows values that do not fit any of IEEE-754 category. Previously they were recognized by intrinsic __builtin_isnan as NaNs. Now this intrinsic is implemented using instruction FXAM, which distinguish between NaNs and unsupported values. It can make some programs behave differently.
As a solution, this fix changes lowering of the intrinsic. If floating point exceptions are ignored, llvm.isnan is lowered into unordered comparison, as __buildtin_isnan was implemented earlier. In strictfp functions the intrinsic is lowered using FXAM, which does not raise exceptions even for signaling NaN, as required by IEEE-754 and C standards.
Differential Revision: https://reviews.llvm.org/D108037
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/x86-fpclass.ll |
Commit
78f92c38101fd1f6788500b3362d3c9c28213bc0
by jonathanchesterfield[openmp][amdgpu] Initial gfx10 offloading implementation
Lets wavefront size be 32 for amdgpu openmp, as well as 64.
Fixes up as little as possible to pass that through the libraries. This change is end to end, as opposed to updating clang/devicertl/plugin separately. It can be broken up for review/commit if preferred. Posting as-is so that others with a gfx10 can try it out. It works roughly as well as gfx9 for me, but there are probably bugs remaining as well as the todo: for letting grid values vary more.
Reviewed By: ronlieb
Differential Revision: https://reviews.llvm.org/D108708
|
 | clang/lib/Basic/Targets/AMDGPU.h |
 | openmp/libomptarget/plugins/amdgpu/src/rtl.cpp |
 | llvm/include/llvm/Frontend/OpenMP/OMPGridValues.h |
 | openmp/libomptarget/deviceRTLs/amdgcn/CMakeLists.txt |
 | openmp/libomptarget/deviceRTLs/amdgcn/src/target_impl.h |
Commit
0dc5dc6531de2b8542fbb0a0bef281c7f9f46a22
by andrea.dibiagio [MCA][NFC] Removed unused method, and fixed a coverity issue.
The coverity issue was reported agaist class MCAOperand due to the lack of proper initialization for field Index.
No functional change intended.
|
 | llvm/tools/llvm-mca/Views/SummaryView.h |
 | llvm/include/llvm/MCA/Instruction.h |
Commit
3f919dfe0de84b9ec288d6126eb8126826a25fcc
by JunMa[AArch64][SVE] Use getPTrue uniformly.NFC.
|
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
Commit
8c471034919702d83c59759bbf4c3a606ac1fab4
by JunMa[AArch64][SVE] Add API for conversion between SVE predicate pattern and element number. NFC
This patch solely moves convert operation between SVE predicate pattern and element number into two small functions. It's pre-commit patch for optimize pture with known sve register width.
Differential Revision: https://reviews.llvm.org/D108705
|
 | llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h |
 | llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
Commit
15b2a8e7faf6b10c1371d0283a0287cf2c93ed0e
by JunMa[AArch64][SVE] Optimize ptrue predicate pattern with known sve register width.
For vectors that are exactly equal to getMaxSVEVectorSizeInBits, just use AArch64SVEPredPattern::all, which can enable the use of unpredicated ptrue when available.
TestPlan: check-llvm
Differential Revision: https://reviews.llvm.org/D108706
|
 | llvm/test/CodeGen/AArch64/sve-fixed-length-optimize-ptrue.ll |
 | llvm/lib/Target/AArch64/AArch64ISelLowering.cpp |
 | llvm/test/CodeGen/AArch64/sve-vscale-attr.ll |
 | llvm/test/CodeGen/AArch64/insert-subvector-res-legalization.ll |
 | llvm/test/CodeGen/AArch64/sve-extract-vector.ll |
 | llvm/test/CodeGen/AArch64/sve-insert-vector.ll |
Commit
416a119f9e5ce45df4c26215d19ed5be29b052cd
by spatel[GlobalOpt] don't hoist constant expressions that can trap
We try to forward a stored-once-constant-value from one global access to another, but that's not safe if the constant value is an expression that can trap.
The tests are reduced from the miscompile examples in: https://llvm.org/PR47578
Differential Revision: https://reviews.llvm.org/D108771
|
 | llvm/lib/Transforms/IPO/GlobalOpt.cpp |
 | llvm/test/Transforms/GlobalOpt/constant-can-trap.ll |
Commit
68088563fbadba92a153cbe03c1586033b19322d
by balazs.benics[analyzer] MallocOverflow should consider comparisons only preceding malloc
MallocOverflow works in two phases:
1) Collects suspicious malloc calls, whose argument is a multiplication 2) Filters the aggregated list of suspicious malloc calls by iterating over the BasicBlocks of the CFG looking for comparison binary operators over the variable constituting in any suspicious malloc.
Consequently, it suppressed true-positive cases when the comparison check was after the malloc call. In this patch the checker will consider the relative position of the relation check to the malloc call.
E.g.:
```lang=C++ void *check_after_malloc(int n, int x) { int *p = NULL; if (x == 42) p = malloc(n * sizeof(int)); // Previously **no** warning, now it // warns about this.
// The check is after the allocation! if (n > 10) { // Do something conditionally. } return p; } ```
Reviewed By: martong
Differential Revision: https://reviews.llvm.org/D107804
|
 | clang/docs/analyzer/checkers.rst |
 | clang/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp |
 | clang/test/Analysis/malloc-overflow.c |
Commit
66dc44f7037bd3d632ab55ee1aaa39d071abc7c6
by thakis[lld/COFF] Use P_priv more
P_priv does the same as the old QF further down. Standardize on P_priv.
No behavior change.
Differential Revision: https://reviews.llvm.org/D108798
|
 | lld/COFF/Options.td |
Commit
34ac7a7ac1a382d3170ab5728b288018b06f98d1
by thakis[lld/COFF] Ignore /LTCG, /LTCG:, /LTCGOUT:, /ILK: flags
We currently complain "could not open /LTCG: no such file or directory", which isn't very useful. We could emit a warning when we see this flag, but just ignoring it seems fine.
Final missing part of PR38799.
Differential Revision: https://reviews.llvm.org/D108799
|
 | lld/COFF/Options.td |
Commit
1494298b512eea734845f2edf8f2cba70a0a1a7c
by Matthew.ArsenaultGlobalISel: Remove check for empty functions as these are invalid IR
|
 | llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp |
Commit
8a780a2f18c590e27e51a2ab3cc81b481c42b42a
by owenca[clang-format] Group options that pack constructor initializers
Add a new option PackConstructorInitializers and deprecate the related options ConstructorInitializerAllOnOneLineOrOnePerLine and AllowAllConstructorInitializersOnNextLine. Below is the mapping:
PackConstructorInitializers ConstructorInitializer... AllowAll... Never - - BinPack false - CurrentLine true false NextLine true true
The option value Never fixes PR50549 by always placing each constructor initializer on its own line.
Differential Revision: https://reviews.llvm.org/D108752
|
 | clang/docs/ClangFormatStyleOptions.rst |
 | clang/lib/Format/ContinuationIndenter.cpp |
 | clang/lib/Format/Format.cpp |
 | clang/lib/Format/TokenAnnotator.cpp |
 | clang/unittests/Format/FormatTest.cpp |
 | clang/include/clang/Format/Format.h |
Commit
9ac45375f1ba496a1b5bc4fdda5b1282ddb53cb1
by Louis DionneRevert "[CMake] Enable LLVM_ENABLE_PER_TARGET_RUNTIME_DIR by default on Linux"
This reverts commit abb956370ee71d018e9a88ae196f039f6c4e0dae, which broke the libc++ CI on Linux.
|
 | llvm/CMakeLists.txt |
Commit
51414d9982e050e22c39a929e17a76ae34334ee6
by Louis Dionne[libc++][NFC] Remove extra __ranges/take_view.h entry in CMakeLists.txt
Differential Revision: https://reviews.llvm.org/D108802
|
 | libcxx/include/CMakeLists.txt |
Commit
8ea3e9d9a2640097e10fe0bc80a0d670831bced6
by dmitry.preobrazhensky[AMDGPU][MC][NFC][DOC] Updated AMD GPU assembler syntax description.
Summary of changes: - Added f16 omod modifier (bug 51386). - Corrected names of data types (bug 48638). - Enabled a16 with most GFX10 MIMG opcodes (see https://reviews.llvm.org/D102231). - Corrected description of integer operands (bug 51130). - Corrected description of 8-bit DS offsets (bug 51536). - Improved PERMLANE op_sel description. - Corrected *SAD* opcode types.
|
 | llvm/docs/AMDGPU/gfx10_label.rst |
 | llvm/docs/AMDGPU/gfx8_sdata32_0.rst |
 | llvm/docs/AMDGPU/gfx908_adst32_0.rst |
 | llvm/docs/AMDGPU/gfx8_sdst64_0.rst |
 | llvm/docs/AMDGPU/gfx10_dst_buf_lds.rst |
 | llvm/docs/AMDGPU/gfx906_src32_4.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_4.rst |
 | llvm/docs/AMDGPU/gfx7_vdata.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_5.rst |
 | llvm/docs/AMDGPU/gfx10_offset_smem_buf.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc.rst |
 | llvm/docs/AMDGPU/gfx10_saddr.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_0.rst |
 | llvm/docs/AMDGPU/gfx8_vdata128_0.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_3.rst |
 | llvm/docs/AMDGPU/gfx10_mod_sdwa_sext.rst |
 | llvm/docs/AMDGPU/gfx7_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx7_vaddr.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc.rst |
 | llvm/docs/AMDGPU/gfx8_vdata64_0.rst |
 | llvm/docs/AMDGPU/gfx8_vdata.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_2.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_15.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_4.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc_2.rst |
 | llvm/docs/AMDGPU/gfx908_dst_flat_atomic32.rst |
 | llvm/docs/AMDGPUInstructionNotation.rst |
 | llvm/docs/AMDGPU/gfx8_vdata1.rst |
 | llvm/docs/AMDGPU/gfx1011_type_dev.rst |
 | llvm/docs/AMDGPU/gfx1011_src32_1.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc64_2.rst |
 | llvm/docs/AMDGPU/gfx10_src32_4.rst |
 | llvm/docs/AMDGPU/gfx8_mod_sdwa_sext.rst |
 | llvm/docs/AMDGPU/gfx908_src_3.rst |
 | llvm/docs/AMDGPU/gfx10_srsrc_1.rst |
 | llvm/docs/AMDGPU/gfx8_vcc.rst |
 | llvm/docs/AMDGPU/gfx10_waitcnt.rst |
 | llvm/docs/AMDGPU/gfx7_uimm16.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_7.rst |
 | llvm/docs/AMDGPU/gfx908_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx10_src_7.rst |
 | llvm/docs/AMDGPU/gfx7_waitcnt.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_9.rst |
 | llvm/docs/AMDGPU/gfx906_mad_type_dev.rst |
 | llvm/docs/AMDGPU/gfx8_hwreg.rst |
 | llvm/docs/AMDGPU/gfx10_data_smem_atomic32.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_4.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_2.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_7.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_1.rst |
 | llvm/docs/AMDGPU/gfx10_addr_ds.rst |
 | llvm/docs/AMDGPU/gfx10_dst_mimg_regular.rst |
 | llvm/docs/AMDGPU/gfx906_vdst.rst |
 | llvm/docs/AMDGPU/gfx8_sdata.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_10.rst |
 | llvm/docs/AMDGPU/gfx10_bimm16.rst |
 | llvm/docs/AMDGPU/gfx10_sdata_2.rst |
 | llvm/docs/AMDGPU/gfx7_vaddr_1.rst |
 | llvm/docs/AMDGPU/gfx908_srsrc.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_8.rst |
 | llvm/docs/AMDGPU/gfx10_data_buf_atomic128.rst |
 | llvm/docs/AMDGPU/gfx908_vdst_3.rst |
 | llvm/docs/AMDGPU/gfx7_addr_buf.rst |
 | llvm/docs/AMDGPU/gfx8_vaddr_2.rst |
 | llvm/docs/AMDGPU/gfx904_src32_1.rst |
 | llvm/docs/AMDGPU/gfx908_saddr.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_8.rst |
 | llvm/docs/AMDGPU/gfx8_fimm16.rst |
 | llvm/docs/AMDGPU/gfx10_sdata_4.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_12.rst |
 | llvm/docs/AMDGPU/gfx8_data_mimg_store.rst |
 | llvm/docs/AMDGPU/gfx10_dst_buf_128.rst |
 | llvm/docs/AMDGPU/gfx904_vdst.rst |
 | llvm/docs/AMDGPU/gfx10_hwreg.rst |
 | llvm/docs/AMDGPU/gfx10_simm32_1.rst |
 | llvm/docs/AMDGPU/gfx904_src_1.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_7.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc_4.rst |
 | llvm/docs/AMDGPU/gfx10_simm16.rst |
 | llvm/docs/AMDGPU/gfx8_vaddr_3.rst |
 | llvm/docs/AMDGPU/gfx900_src32_0.rst |
 | llvm/docs/AMDGPU/gfx908_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx8_data_mimg_store_d16.rst |
 | llvm/docs/AMDGPU/gfx8_fimm32.rst |
 | llvm/docs/AMDGPU/gfx7_dst_buf_96.rst |
 | llvm/docs/AMDGPU/gfx10_data_mimg_atomic_cmp.rst |
 | llvm/docs/AMDGPU/gfx7_dst_mimg_regular.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_1.rst |
 | llvm/docs/AMDGPU/gfx1011_src32_0.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_5.rst |
 | llvm/docs/AMDGPU/gfx1011_src32_2.rst |
 | llvm/docs/AMDGPU/gfx7_mod.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc_2.rst |
 | llvm/docs/AMDGPU/gfx8_src32_0.rst |
 | llvm/docs/AMDGPU/gfx10_dst_buf_32.rst |
 | llvm/docs/AMDGPU/gfx10_src_4.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_12.rst |
 | llvm/docs/AMDGPU/gfx904_mad_type_dev.rst |
 | llvm/docs/AMDGPU/gfx8_addr_buf.rst |
 | llvm/docs/AMDGPU/gfx904_fx_operand.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_14.rst |
 | llvm/docs/AMDGPU/gfx8_tgt.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc32_3.rst |
 | llvm/docs/AMDGPU/gfx8_src_9.rst |
 | llvm/docs/AMDGPU/gfx900_mod_vop3_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx908_src_2.rst |
 | llvm/docs/AMDGPU/gfx7_bimm32.rst |
 | llvm/docs/AMDGPU/gfx10_sdata_3.rst |
 | llvm/docs/AMDGPU/gfx8_src_4.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_8.rst |
 | llvm/docs/AMDGPU/gfx7_src_2.rst |
 | llvm/docs/AMDGPU/gfx7_vdst.rst |
 | llvm/docs/AMDGPU/gfx7_opt.rst |
 | llvm/docs/AMDGPU/gfx8_soffset_2.rst |
 | llvm/docs/AMDGPU/gfx8_bimm32.rst |
 | llvm/docs/AMDGPU/gfx908_opt.rst |
 | llvm/docs/AMDGPU/gfx1011_vdst.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_2.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_12.rst |
 | llvm/docs/AMDGPU/gfx8_vaddr.rst |
 | llvm/docs/AMDGPU/gfx10_data_buf_atomic32.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_13.rst |
 | llvm/docs/AMDGPU/gfx7_src_6.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_atomic128.rst |
 | llvm/docs/AMDGPU/gfx7_simm32.rst |
 | llvm/docs/AMDGPU/gfx7_src_4.rst |
 | llvm/docs/AMDGPU/gfx8_uimm16.rst |
 | llvm/docs/AMDGPU/gfx8_m_1.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_3.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_1.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_4.rst |
 | llvm/docs/AMDGPU/gfx7_sdst32_1.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_11.rst |
 | llvm/docs/AMDGPU/gfx7_vcc_64.rst |
 | llvm/docs/AMDGPU/gfx90a_src_7.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_flat_scratch.rst |
 | llvm/docs/AMDGPU/gfx8_src32_4.rst |
 | llvm/docs/AMDGPUModifierSyntax.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_9.rst |
 | llvm/docs/AMDGPU/gfx10_vdata1.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc_2.rst |
 | llvm/docs/AMDGPU/gfx10_type_dev.rst |
 | llvm/docs/AMDGPU/gfx900_m.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_1.rst |
 | llvm/docs/AMDGPU/gfx900_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx908_addr_buf.rst |
 | llvm/docs/AMDGPU/gfx7_imm16_1.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc_1.rst |
 | llvm/docs/AMDGPU/gfx908_mod_vop3_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx10_soffset_1.rst |
 | llvm/docs/AMDGPU/gfx8_src_exp.rst |
 | llvm/docs/AMDGPU/gfx8_imm16_1.rst |
 | llvm/docs/AMDGPU/gfx7_imm16.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_4.rst |
 | llvm/docs/AMDGPU/gfx904_mod_vop3_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx10_dst_mimg_regular_d16.rst |
 | llvm/docs/AMDGPU/gfx8_vdata1_1.rst |
 | llvm/docs/AMDGPU/gfx7_vdst96_0.rst |
 | llvm/docs/AMDGPU/gfx10_wsdst.rst |
 | llvm/docs/AMDGPU/gfx8_src_2.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_3.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_6.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc_3.rst |
 | llvm/docs/AMDGPU/gfx908_src32_5.rst |
 | llvm/docs/AMDGPU/gfx908_src32_2.rst |
 | llvm/docs/AMDGPU/gfx908_fx_operand.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_2.rst |
 | llvm/docs/AMDGPU/gfx7_src_3.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_5.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX908.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc128_0.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_d16_96.rst |
 | llvm/docs/AMDGPU/gfx7_srsrc.rst |
 | llvm/docs/AMDGPU/gfx8_vcc_64.rst |
 | llvm/docs/AMDGPU/gfx10_soffset.rst |
 | llvm/docs/AMDGPU/gfx90a_src_10.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_3.rst |
 | llvm/docs/AMDGPU/gfx10_probe.rst |
 | llvm/docs/AMDGPU/gfx10_data_smem_atomic64.rst |
 | llvm/docs/AMDGPU/gfx7_vcc.rst |
 | llvm/docs/AMDGPU/gfx908_saddr_flat_global.rst |
 | llvm/docs/AMDGPU/gfx7_vdst64_0.rst |
 | llvm/docs/AMDGPU/gfx7_addr_flat.rst |
 | llvm/docs/AMDGPU/gfx10_vdata.rst |
 | llvm/docs/AMDGPU/gfx908_data_buf_atomic32.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc32_2.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_5.rst |
 | llvm/docs/AMDGPU/gfx9_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx10_data_smem_atomic128.rst |
 | llvm/docs/AMDGPU/gfx10_mad_type_dev.rst |
 | llvm/docs/AMDGPU/gfx10_mod_dpp_sdwa_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx7_data_mimg_store.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_6.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_2.rst |
 | llvm/docs/AMDGPU/gfx10_saddr_flat_scratch.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_2.rst |
 | llvm/docs/AMDGPU/gfx908_src32_1.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_7.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_9.rst |
 | llvm/docs/AMDGPU/gfx10_fx_operand.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_2.rst |
 | llvm/docs/AMDGPU/gfx8_vdst.rst |
 | llvm/docs/AMDGPU/gfx10_sdata_1.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_5.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc64_3.rst |
 | llvm/docs/AMDGPU/gfx8_base_smem_addr.rst |
 | llvm/docs/AMDGPU/gfx10_addr_flat.rst |
 | llvm/docs/AMDGPU/gfx10_samp_mimg.rst |
 | llvm/docs/AMDGPU/gfx10_vcc.rst |
 | llvm/docs/AMDGPU/gfx908_vdata_1.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_6.rst |
 | llvm/docs/AMDGPU/gfx10_sbase_2.rst |
 | llvm/docs/AMDGPU/gfx10_vdst64_0.rst |
 | llvm/docs/AMDGPU/gfx906_mod_dpp_sdwa_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_8.rst |
 | llvm/docs/AMDGPU/gfx8_srsrc_1.rst |
 | llvm/docs/AMDGPU/gfx8_perm_smem.rst |
 | llvm/docs/AMDGPU/gfx10_rsrc_buf.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc.rst |
 | llvm/docs/AMDGPU/gfx90a_src_3.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_2.rst |
 | llvm/docs/AMDGPU/gfx7_bimm16.rst |
 | llvm/docs/AMDGPU/gfx7_rsrc_mimg.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_atomic64.rst |
 | llvm/docs/AMDGPU/gfx10_src32_5.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_10.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_7.rst |
 | llvm/docs/AMDGPU/gfx8_addr_ds.rst |
 | llvm/docs/AMDGPU/gfx900_fx_operand.rst |
 | llvm/docs/AMDGPU/gfx7_src_7.rst |
 | llvm/docs/AMDGPU/gfx908_src_5.rst |
 | llvm/docs/AMDGPU/gfx7_dst_buf_64.rst |
 | llvm/docs/AMDGPU/gfx8_data_mimg_atomic_cmp.rst |
 | llvm/docs/AMDGPU/gfx8_m.rst |
 | llvm/docs/AMDGPU/gfx7_src_10.rst |
 | llvm/docs/AMDGPU/gfx8_src32_7.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr.rst |
 | llvm/docs/AMDGPU/gfx906_src_2.rst |
 | llvm/docs/AMDGPU/gfx7_tgt.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_3.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_4.rst |
 | llvm/docs/AMDGPU/gfx8_dst.rst |
 | llvm/docs/AMDGPU/gfx8_src_6.rst |
 | llvm/docs/AMDGPU/gfx10_vdata0.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_3.rst |
 | llvm/docs/AMDGPU/gfx10_dst_mimg_gather4.rst |
 | llvm/docs/AMDGPU/gfx10_vdata0_1.rst |
 | llvm/docs/AMDGPU/gfx908_rsrc_buf.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_1.rst |
 | llvm/docs/AMDGPU/gfx8_vaddr_1.rst |
 | llvm/docs/AMDGPU/gfx908_vdst_2.rst |
 | llvm/docs/AMDGPU/gfx7_dst_flat_atomic32.rst |
 | llvm/docs/AMDGPU/gfx8_src_3.rst |
 | llvm/docs/AMDGPU/gfx906_fx_operand.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX10.rst |
 | llvm/docs/AMDGPU/gfx8_imm16_2.rst |
 | llvm/docs/AMDGPU/gfx8_sbase.rst |
 | llvm/docs/AMDGPU/gfx10_m_1.rst |
 | llvm/docs/AMDGPU/gfx7_vdata1_1.rst |
 | llvm/docs/AMDGPU/gfx10_perm_smem.rst |
 | llvm/docs/AMDGPU/gfx10_vdata128_0.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_1.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_8.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_11.rst |
 | llvm/docs/AMDGPU/gfx7_src32_6.rst |
 | llvm/docs/AMDGPU/gfx8_sdata_2.rst |
 | llvm/docs/AMDGPU/gfx8_simm16.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_7.rst |
 | llvm/docs/AMDGPU/gfx8_ret.rst |
 | llvm/docs/AMDGPU/gfx10_data_mimg_atomic_reg.rst |
 | llvm/docs/AMDGPU/gfx10_sdata32_0.rst |
 | llvm/docs/AMDGPU/gfx10_sdst32_2.rst |
 | llvm/docs/AMDGPU/gfx10_vcc_32.rst |
 | llvm/docs/AMDGPU/gfx7_sdst32_0.rst |
 | llvm/docs/AMDGPU/gfx908_asrc32_0.rst |
 | llvm/docs/AMDGPU/gfx8_label.rst |
 | llvm/docs/AMDGPU/gfx10_offset_smem_plain.rst |
 | llvm/docs/AMDGPU/gfx7_vdata64_0.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_10.rst |
 | llvm/docs/AMDGPU/gfx7_src64_2.rst |
 | llvm/docs/AMDGPU/gfx8_sdst32_1.rst |
 | llvm/docs/AMDGPU/gfx8_offset_smem_store.rst |
 | llvm/docs/AMDGPU/gfx10_src32_1.rst |
 | llvm/docs/AMDGPU/gfx906_src32_0.rst |
 | llvm/docs/AMDGPU/gfx900_src32_1.rst |
 | llvm/docs/AMDGPU/gfx1011_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx10_dst_flat_atomic64.rst |
 | llvm/docs/AMDGPU/gfx8_src_5.rst |
 | llvm/docs/AMDGPU/gfx906_src_4.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX900.rst |
 | llvm/docs/AMDGPU/gfx10_rsrc_mimg.rst |
 | llvm/docs/AMDGPUInstructionSyntax.rst |
 | llvm/docs/AMDGPU/gfx7_sdst128_0.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_3.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc32_4.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_3.rst |
 | llvm/docs/AMDGPU/gfx7_data_buf_atomic32.rst |
 | llvm/docs/AMDGPU/gfx8_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_atomic32.rst |
 | llvm/docs/AMDGPU/gfx908_soffset.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc32_2.rst |
 | llvm/docs/AMDGPU/gfx10_attr.rst |
 | llvm/docs/AMDGPU/gfx906_src_3.rst |
 | llvm/docs/AMDGPU/gfx8_sdst.rst |
 | llvm/docs/AMDGPU/gfx8_sdst64_1.rst |
 | llvm/docs/AMDGPU/gfx8_sdst32_2.rst |
 | llvm/docs/AMDGPU/gfx908_asrc512_0.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc_6.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_5.rst |
 | llvm/docs/AMDGPU/gfx10_ret.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc.rst |
 | llvm/docs/AMDGPU/gfx10_sdst512_0.rst |
 | llvm/docs/AMDGPU/gfx10_bimm32.rst |
 | llvm/docs/AMDGPU/gfx906_mod_vop3_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx906_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_64.rst |
 | llvm/docs/AMDGPU/gfx10_imm16_1.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_1.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_7.rst |
 | llvm/docs/AMDGPU/gfx908_src32_4.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX906.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc64_1.rst |
 | llvm/docs/AMDGPU/gfx7_base_smem_addr.rst |
 | llvm/docs/AMDGPU/gfx908_vaddr_flat_global.rst |
 | llvm/docs/AMDGPU/gfx10_opt.rst |
 | llvm/docs/AMDGPU/gfx7_soffset.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc_3.rst |
 | llvm/docs/AMDGPU/gfx8_probe.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_6.rst |
 | llvm/docs/AMDGPU/gfx10_saddr_1.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_32.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_2.rst |
 | llvm/docs/AMDGPU/gfx908_vaddr_1.rst |
 | llvm/docs/AMDGPU/gfx8_imm16.rst |
 | llvm/docs/AMDGPU/gfx10_vdata1_1.rst |
 | llvm/docs/AMDGPU/gfx10_sdst256_0.rst |
 | llvm/docs/AMDGPU/gfx908_src.rst |
 | llvm/docs/AMDGPU/gfx1011_src32_3.rst |
 | llvm/docs/AMDGPU/gfx8_opt.rst |
 | llvm/docs/AMDGPU/gfx8_addr_flat.rst |
 | llvm/docs/AMDGPU/gfx908_adst512_0.rst |
 | llvm/docs/AMDGPU/gfx8_src64_0.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_1.rst |
 | llvm/docs/AMDGPU/gfx7_addr_mimg.rst |
 | llvm/docs/AMDGPU/gfx10_fimm16.rst |
 | llvm/docs/AMDGPU/gfx908_vdata32_0.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_5.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_5.rst |
 | llvm/docs/AMDGPU/gfx10_param.rst |
 | llvm/docs/AMDGPU/gfx906_src32_1.rst |
 | llvm/docs/AMDGPU/gfx1011_src_1.rst |
 | llvm/docs/AMDGPU/gfx908_vaddr.rst |
 | llvm/docs/AMDGPU/gfx10_dst_buf_96.rst |
 | llvm/docs/AMDGPU/gfx8_sbase_1.rst |
 | llvm/docs/AMDGPU/gfx8_sdst512_0.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_12.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_4.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_d16_64.rst |
 | llvm/docs/AMDGPU/gfx10_src_1.rst |
 | llvm/docs/AMDGPU/gfx10_mod_vop3_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx8_src_1.rst |
 | llvm/docs/AMDGPU/gfx906_src_1.rst |
 | llvm/docs/AMDGPU/gfx8_src_8.rst |
 | llvm/docs/AMDGPU/gfx8_vdata32_0.rst |
 | llvm/docs/AMDGPU/gfx10_imm16_2.rst |
 | llvm/docs/AMDGPU/gfx10_simm32.rst |
 | llvm/docs/AMDGPU/gfx10_sdata_5.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_9.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_6.rst |
 | llvm/docs/AMDGPU/gfx8_samp_mimg.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_6.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc64_0.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc32_4.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_4.rst |
 | llvm/docs/AMDGPU/gfx908_mod_dpp_sdwa_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx10_uimm16.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_6.rst |
 | llvm/docs/AMDGPU/gfx906_mod_sdwa_sext.rst |
 | llvm/docs/AMDGPU/gfx7_ret.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_1.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_4.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc64_0.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc32_1.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_5.rst |
 | llvm/docs/AMDGPU/gfx7_ssamp.rst |
 | llvm/docs/AMDGPU/gfx906_type_dev.rst |
 | llvm/docs/AMDGPU/gfx10_src.rst |
 | llvm/docs/AMDGPU/gfx8_src_10.rst |
 | llvm/docs/AMDGPU/gfx908_src32_3.rst |
 | llvm/docs/AMDGPU/gfx7_sdst32_2.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc64_0.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_17.rst |
 | llvm/docs/AMDGPU/gfx10_vdst96_0.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc64_2.rst |
 | llvm/docs/AMDGPU/gfx908_asrc128_0.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_5.rst |
 | llvm/docs/AMDGPU/gfx8_offset_buf.rst |
 | llvm/docs/AMDGPU/gfx10_vdata96_0.rst |
 | llvm/docs/AMDGPU/gfx10_sdst32_0.rst |
 | llvm/docs/AMDGPU/gfx7_imm16_2.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc64_0.rst |
 | llvm/docs/AMDGPU/gfx900_vdst.rst |
 | llvm/docs/AMDGPU/gfx10_m.rst |
 | llvm/docs/AMDGPU/gfx7_label.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc64_0.rst |
 | llvm/docs/AMDGPU/gfx900_src.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_11.rst |
 | llvm/docs/AMDGPU/gfx8_mod_vop3_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx8_offset_smem_load.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_4.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_128.rst |
 | llvm/docs/AMDGPU/gfx906_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx7_sbase.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_2.rst |
 | llvm/docs/AMDGPU/gfx10_vaddr_flat_global.rst |
 | llvm/docs/AMDGPU/gfx7_offset_buf.rst |
 | llvm/docs/AMDGPU/gfx7_soffset_1.rst |
 | llvm/docs/AMDGPU/gfx904_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx7_src_1.rst |
 | llvm/docs/AMDGPU/gfx908_src_4.rst |
 | llvm/docs/AMDGPU/gfx7_src_9.rst |
 | llvm/docs/AMDGPU/gfx7_vaddr_3.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_2.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_10.rst |
 | llvm/docs/AMDGPU/gfx7_src32_4.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_4.rst |
 | llvm/docs/AMDGPU/gfx906_src.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_3.rst |
 | llvm/docs/AMDGPU/gfx7_samp_mimg.rst |
 | llvm/docs/AMDGPU/gfx7_param.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_8.rst |
 | llvm/docs/AMDGPU/gfx10_src32_3.rst |
 | llvm/docs/AMDGPU/gfx8_bimm16.rst |
 | llvm/docs/AMDGPU/gfx7_offset_smem.rst |
 | llvm/docs/AMDGPU/gfx906_m_1.rst |
 | llvm/docs/AMDGPU/gfx8_sdst128_0.rst |
 | llvm/docs/AMDGPU/gfx8_rsrc_mimg.rst |
 | llvm/docs/AMDGPU/gfx1011_vsrc32_0.rst |
 | llvm/docs/AMDGPU/gfx8_src32_3.rst |
 | llvm/docs/AMDGPU/gfx8_sdst256_0.rst |
 | llvm/docs/AMDGPU/gfx10_simm32_2.rst |
 | llvm/docs/AMDGPU/gfx10_wssrc.rst |
 | llvm/docs/AMDGPU/gfx90a_src_11.rst |
 | llvm/docs/AMDGPU/gfx7_vdata32_0.rst |
 | llvm/docs/AMDGPU/gfx10_sbase_1.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_10.rst |
 | llvm/docs/AMDGPU/gfx10_base_smem_buf.rst |
 | llvm/docs/AMDGPU/gfx908_m.rst |
 | llvm/docs/AMDGPU/gfx8_base_smem_buf.rst |
 | llvm/docs/AMDGPU/gfx906_vsrc.rst |
 | llvm/docs/AMDGPU/gfx7_sdst64_1.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_8.rst |
 | llvm/docs/AMDGPU/gfx8_src.rst |
 | llvm/docs/AMDGPU/gfx7_dst_buf_32.rst |
 | llvm/docs/AMDGPU/gfx7_src64_1.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc_2.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc32_0.rst |
 | llvm/docs/AMDGPU/gfx1011_src_2.rst |
 | llvm/docs/AMDGPU/gfx10_src_3.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc128_0.rst |
 | llvm/docs/AMDGPU/gfx8_ssamp.rst |
 | llvm/docs/AMDGPU/gfx900_mad_type_dev.rst |
 | llvm/docs/AMDGPU/gfx10_sdst64_1.rst |
 | llvm/docs/AMDGPU/gfx10_data_buf_atomic64.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc64_0.rst |
 | llvm/docs/AMDGPU/gfx10_offset_buf.rst |
 | llvm/docs/AMDGPU/gfx1011_src.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_3.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_96.rst |
 | llvm/docs/AMDGPU/gfx10_tgt.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc32_1.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_6.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_16.rst |
 | llvm/docs/AMDGPU/gfx908_src32_0.rst |
 | llvm/docs/AMDGPU/gfx7_vdata128_0.rst |
 | llvm/docs/AMDGPU/gfx904_m.rst |
 | llvm/docs/AMDGPU/gfx906_src32_3.rst |
 | llvm/docs/AMDGPU/gfx7_src32_3.rst |
 | llvm/docs/AMDGPU/gfx8_vdst96_0.rst |
 | llvm/docs/AMDGPU/gfx10_base_smem_addr.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc_1.rst |
 | llvm/docs/AMDGPU/gfx90a_src_6.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_5.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_9.rst |
 | llvm/docs/AMDGPU/gfx10_addr_buf.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_6.rst |
 | llvm/docs/AMDGPU/gfx908_adst1024_0.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc_1.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_7.rst |
 | llvm/docs/AMDGPU/gfx7_src32_1.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc64_3.rst |
 | llvm/docs/AMDGPU/gfx908_vdst_1.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc32_0.rst |
 | llvm/docs/AMDGPU/gfx10_dst.rst |
 | llvm/docs/AMDGPU/gfx7_src32_2.rst |
 | llvm/docs/AMDGPU/gfx10_sdst_2.rst |
 | llvm/docs/AMDGPU/gfx908_vasrc64_0.rst |
 | llvm/docs/AMDGPU/gfx7_base_smem_buf.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX1011.rst |
 | llvm/docs/AMDGPU/gfx7_vdata0.rst |
 | llvm/docs/AMDGPU/gfx10_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx908_src_1.rst |
 | llvm/docs/AMDGPU/gfx10_sdst64_0.rst |
 | llvm/docs/AMDGPU/gfx10_sdata128_0.rst |
 | llvm/docs/AMDGPU/gfx8_rsrc_buf.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_8.rst |
 | llvm/docs/AMDGPU/gfx10_sdata.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_4.rst |
 | llvm/docs/AMDGPU/gfx7_src_exp.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_4.rst |
 | llvm/docs/AMDGPU/gfx908_dst.rst |
 | llvm/docs/AMDGPU/gfx8_mod_dpp_sdwa_abs_neg.rst |
 | llvm/docs/AMDGPU/gfx7_rsrc_buf.rst |
 | llvm/docs/AMDGPU/gfx904_src.rst |
 | llvm/docs/AMDGPU/gfx8_type_dev.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_d16_96.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX7.rst |
 | llvm/docs/AMDGPU/gfx908_type_dev.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_1.rst |
 | llvm/docs/AMDGPU/gfx10_data_mimg_store_d16.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_13.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_7.rst |
 | llvm/docs/AMDGPU/gfx906_m.rst |
 | llvm/docs/AMDGPU/gfx7_data_mimg_atomic_reg.rst |
 | llvm/docs/AMDGPU/gfx10_sbase.rst |
 | llvm/docs/AMDGPU/gfx8_addr_mimg.rst |
 | llvm/docs/AMDGPU/gfx7_simm16.rst |
 | llvm/docs/AMDGPU/gfx8_src32_5.rst |
 | llvm/docs/AMDGPU/gfx7_sdst256_0.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc64_1.rst |
 | llvm/docs/AMDGPU/gfx7_dst_buf_lds.rst |
 | llvm/docs/AMDGPU/gfx10_saddr_flat_global.rst |
 | llvm/docs/AMDGPU/gfx908_adst128_0.rst |
 | llvm/docs/AMDGPU/gfx7_srsrc_1.rst |
 | llvm/docs/AMDGPU/gfx8_simm32_1.rst |
 | llvm/docs/AMDGPU/gfx7_src32_5.rst |
 | llvm/docs/AMDGPU/gfx8_simm32_2.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc32_5.rst |
 | llvm/docs/AMDGPU/gfx10_src32_2.rst |
 | llvm/docs/AMDGPU/gfx7_sbase_1.rst |
 | llvm/docs/AMDGPU/gfx908_vdst.rst |
 | llvm/docs/AMDGPU/gfx10_src32_6.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_3.rst |
 | llvm/docs/AMDGPU/gfx10_sdst128_0.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX8.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_9.rst |
 | llvm/docs/AMDGPU/gfx7_vdst128_0.rst |
 | llvm/docs/AMDGPU/gfx8_dst_flat_atomic64.rst |
 | llvm/docs/AMDGPU/gfx8_sdst32_0.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_7.rst |
 | llvm/docs/AMDGPU/gfx10_src_2.rst |
 | llvm/docs/AMDGPU/gfx906_src32_2.rst |
 | llvm/docs/AMDGPU/gfx904_src32_0.rst |
 | llvm/docs/AMDGPU/gfx10_ssamp.rst |
 | llvm/docs/AMDGPU/gfx90a_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_1.rst |
 | llvm/docs/AMDGPU/gfx8_data_mimg_atomic_reg.rst |
 | llvm/docs/AMDGPU/gfx10_dst_flat_atomic32.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX9.rst |
 | llvm/docs/AMDGPU/gfx8_attr.rst |
 | llvm/docs/AMDGPU/gfx8_dst_flat_atomic32.rst |
 | llvm/docs/AMDGPU/gfx10_src_6.rst |
 | llvm/docs/AMDGPU/gfx8_sdata64_0.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc32_1.rst |
 | llvm/docs/AMDGPU/gfx7_src64_0.rst |
 | llvm/docs/AMDGPU/gfx8_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx906_vsrc32_0.rst |
 | llvm/docs/AMDGPU/gfx8_simm32.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_4.rst |
 | llvm/docs/AMDGPU/gfx7_type_dev.rst |
 | llvm/docs/AMDGPU/gfx10_soffset_2.rst |
 | llvm/docs/AMDGPU/gfx10_addr_mimg.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_5.rst |
 | llvm/docs/AMDGPU/gfx7_hwreg.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_5.rst |
 | llvm/docs/AMDGPU/gfx8_soffset_1.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc32_2.rst |
 | llvm/docs/AMDGPU/gfx10_sdst32_1.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_d16_64.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc32_3.rst |
 | llvm/docs/AMDGPU/gfx7_fimm32.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX90a.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc64_1.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_3.rst |
 | llvm/docs/AMDGPU/gfx908_vasrc32_0.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc128_0.rst |
 | llvm/docs/AMDGPU/gfx10_vdst_8.rst |
 | llvm/docs/AMDGPU/gfx1011_vsrc.rst |
 | llvm/docs/AMDGPU/gfx8_src32_2.rst |
 | llvm/docs/AMDGPU/gfx908_m_1.rst |
 | llvm/docs/AMDGPU/gfx8_vdst128_0.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_1.rst |
 | llvm/docs/AMDGPU/gfx7_dst.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_11.rst |
 | llvm/docs/AMDGPU/gfx908_mod_sdwa_sext.rst |
 | llvm/docs/AMDGPU/gfx10_src_exp.rst |
 | llvm/docs/AMDGPU/gfx8_imask.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_8.rst |
 | llvm/docs/AMDGPU/gfx7_simm32_1.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc_5.rst |
 | llvm/docs/AMDGPU/gfx8_sdata128_0.rst |
 | llvm/docs/AMDGPU/gfx7_attr.rst |
 | llvm/docs/AMDGPU/AMDGPUAsmGFX904.rst |
 | llvm/docs/AMDGPU/gfx908_vdata.rst |
 | llvm/docs/AMDGPU/gfx10_src_5.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc32_1.rst |
 | llvm/docs/AMDGPU/gfx10_sdata64_0.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc_3.rst |
 | llvm/docs/AMDGPU/gfx8_sdst_6.rst |
 | llvm/docs/AMDGPU/gfx7_sdst_6.rst |
 | llvm/docs/AMDGPU/gfx10_imm16.rst |
 | llvm/docs/AMDGPU/gfx7_m.rst |
 | llvm/docs/AMDGPU/gfx8_vdata96_0.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_6.rst |
 | llvm/docs/AMDGPU/gfx10_msg.rst |
 | llvm/docs/AMDGPU/gfx8_sdata_1.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_d16_32.rst |
 | llvm/docs/AMDGPU/gfx7_data_buf_atomic128.rst |
 | llvm/docs/AMDGPU/gfx8_msg.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_d16_128.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_1.rst |
 | llvm/docs/AMDGPU/gfx8_soffset.rst |
 | llvm/docs/AMDGPU/gfx10_vdata64_0.rst |
 | llvm/docs/AMDGPU/gfx8_src32_1.rst |
 | llvm/docs/AMDGPU/gfx10_dst_buf_64.rst |
 | llvm/docs/AMDGPU/gfx7_dst_flat_atomic64.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc_5.rst |
 | llvm/docs/AMDGPU/gfx10_ssrc_6.rst |
 | llvm/docs/AMDGPU/gfx8_param.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc32_0.rst |
 | llvm/docs/AMDGPU/gfx8_src_7.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_3.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_3.rst |
 | llvm/docs/AMDGPU/gfx8_src32_6.rst |
 | llvm/docs/AMDGPU/gfx10_sdst.rst |
 | llvm/docs/AMDGPU/gfx7_vdata0_1.rst |
 | llvm/docs/AMDGPU/gfx8_srsrc.rst |
 | llvm/docs/AMDGPU/gfx8_vsrc_3.rst |
 | llvm/docs/AMDGPU/gfx90a_src_8.rst |
 | llvm/docs/AMDGPU/gfx10_base_smem_scratch.rst |
 | llvm/docs/AMDGPU/gfx10_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx10_data_mimg_store.rst |
 | llvm/docs/AMDGPU/gfx7_vdata1.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc32_0.rst |
 | llvm/docs/AMDGPU/gfx10_vdata_10.rst |
 | llvm/docs/AMDGPU/gfx908_vsrc32_0.rst |
 | llvm/docs/AMDGPU/gfx10_src64_0.rst |
 | llvm/docs/AMDGPU/gfx90a_src_9.rst |
 | llvm/docs/AMDGPU/gfx7_dst_buf_128.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_13.rst |
 | llvm/docs/AMDGPU/gfx7_data_buf_atomic64.rst |
 | llvm/docs/AMDGPU/gfx7_vdata96_0.rst |
 | llvm/docs/AMDGPU/gfx7_ssrc_7.rst |
 | llvm/docs/AMDGPU/gfx7_dst_mimg_gather4.rst |
 | llvm/docs/AMDGPU/gfx10_vdst.rst |
 | llvm/docs/AMDGPU/gfx90a_src_4.rst |
 | llvm/docs/AMDGPU/gfx7_vsrc_1.rst |
 | llvm/docs/AMDGPU/gfx1011_type_deviation.rst |
 | llvm/docs/AMDGPU/gfx8_dst_buf_lds.rst |
 | llvm/docs/AMDGPU/gfx8_vdata0_1.rst |
 | llvm/docs/AMDGPU/gfx10_vdst128_0.rst |
 | llvm/docs/AMDGPU/gfx10_vdata32_0.rst |
 | llvm/docs/AMDGPU/gfx7_vdata_2.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_d16_32.rst |
 | llvm/docs/AMDGPU/gfx8_dst_mimg_gather4.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_9.rst |
 | llvm/docs/AMDGPU/gfx7_src32_0.rst |
 | llvm/docs/AMDGPU/gfx7_msg.rst |
 | llvm/docs/AMDGPU/gfx8_ssrc32_0.rst |
 | llvm/docs/AMDGPU/gfx908_mad_type_dev.rst |
 | llvm/docs/AMDGPU/gfx908_vdst_5.rst |
 | llvm/docs/AMDGPU/gfx10_src_8.rst |
 | llvm/docs/AMDGPU/gfx7_src.rst |
 | llvm/docs/AMDGPU/gfx10_srsrc.rst |
 | llvm/docs/AMDGPU/gfx7_src_8.rst |
 | llvm/docs/AMDGPU/gfx900_src_1.rst |
 | llvm/docs/AMDGPU/gfx7_data_mimg_atomic_cmp.rst |
 | llvm/docs/AMDGPU/gfx8_dst_mimg_regular.rst |
 | llvm/docs/AMDGPU/gfx8_vdata0.rst |
 | llvm/docs/AMDGPU/gfx908_ret.rst |
 | llvm/docs/AMDGPU/gfx7_vaddr_2.rst |
 | llvm/docs/AMDGPU/gfx7_vdst_1.rst |
 | llvm/docs/AMDGPU/gfx8_vdst64_0.rst |
 | llvm/docs/AMDGPU/gfx8_data_buf_d16_128.rst |
 | llvm/docs/AMDGPU/gfx908_asrc1024_0.rst |
 | llvm/docs/AMDGPU/gfx7_vdst32_0.rst |
 | llvm/docs/AMDGPU/gfx908_vdst_4.rst |
 | llvm/docs/AMDGPU/gfx7_sdst.rst |
 | llvm/docs/AMDGPU/gfx7_sdst64_0.rst |
 | llvm/docs/AMDGPU/gfx8_src64_1.rst |
 | llvm/docs/AMDGPU/gfx7_src_5.rst |
 | llvm/docs/AMDGPU/gfx8_waitcnt.rst |
 | llvm/docs/AMDGPU/gfx1011_src_3.rst |
 | llvm/docs/AMDGPU/gfx7_addr_ds.rst |
 | llvm/docs/AMDGPU/gfx10_fimm32.rst |
 | llvm/docs/AMDGPU/gfx10_vsrc32_1.rst |
 | llvm/docs/AMDGPU/gfx8_dst_mimg_regular_d16.rst |
 | llvm/docs/AMDGPU/gfx10_src32_0.rst |
 | llvm/docs/AMDGPU/gfx7_sdst512_0.rst |
 | llvm/docs/AMDGPU/gfx8_vdata_7.rst |
 | llvm/docs/AMDGPU/gfx8_vdst_14.rst |
 | llvm/docs/AMDGPU/gfx908_offset_buf.rst |
Commit
72bbd1559e75b1e32c7669c4ef7cfa85efc47aef
by kazu[IR] Remove getWithOperandReplaced (NFC)
The function hasn't been used for at least 10 years.
|
 | llvm/include/llvm/IR/Constants.h |
 | llvm/lib/IR/Constants.cpp |
Commit
9d7a77c26d2f68e1c3b58b61d792d371bd3ed224
by fanbo.meng[MCParser][z/OS] Mark test as unsupported for the z/OS Target
Marking test as unsupported for the same reason as https://reviews.llvm.org/D105204
Reviewed By: abhina.sreeskantharajan
Differential Revision: https://reviews.llvm.org/D108819
|
 | clang/test/Driver/as-version.s |
Commit
b91365e0f1611323cfe460f71e189d3566709804
by Louis Dionne[libc++][NFC] Remove unused helper function in the test suite
|
 | libcxx/test/support/test_range.h |
Commit
77b6a4bde4de37bd77f4846b3c31c1d0633a8f13
by aeubanks[gn build] Don't copy xray includes
The gn build doesn't support xray, so there's no reason to make the xray headers available. Some CMake checks check if xray includes are available to determine if xray is usable. Since we don't build the xray runtime, there are link errors.
Reviewed By: thakis
Differential Revision: https://reviews.llvm.org/D108737
|
 | llvm/utils/gn/secondary/compiler-rt/include/BUILD.gn |
Commit
83dfa0d098f3176607aecea815eb87979953cdb5
by i[MC] Change ELFOSABI_NONE to ELFOSABI_GNU for STB_GNU_UNIQUE
Similar to D97976. On Linux, most GCC installations are configured with `--enable-gnu-unique-object` and such GCC emits `@gnu_unique_object` assembly.
The feature is highly controversial and disliked by many folks. (On glibc DF_1_NODELETE is implicitly enabled and makes dlclose a no-op).
In llvm-project STB_GNU_UNIQUE is assembly only. Clang does not use STB_GNU_UNIQUE.
Use ELFOSABI_GNU to match GNU as behavior and avoid collision with other OSABI binding values.
Reviewed By: jrtc27
Differential Revision: https://reviews.llvm.org/D107861
|
 | llvm/lib/MC/MCELFStreamer.cpp |
 | llvm/test/MC/ELF/gnu-type.s |
 | llvm/test/MC/ELF/gnu-unique.s |
Commit
8e284be04f2cd43a821289133a759afa2844f935
by sivachandra[libc][Obvious] Add header guards for the generated linux syscall header file.
|
 | libc/config/linux/syscall.h.def |
Commit
602497d672ca66f3f0e59adca35f00199f266810
by walter erquinigo[trace] [intel pt] Create a "process trace save" command
added new command "process trace save -d <directory>". -it saves a JSON file as <directory>/trace.json, with the main properties of the trace session. -it saves binary Intel-pt trace as <directory>/thread_id.trace; each file saves each thread. -it saves modules to the directory <directory>/modules . -it only works for live process and it only support Intel-pt right now.
Example: ``` b main run process trace start n process trace save -d /tmp/mytrace ``` A file named trace.json and xxx.trace should be generated in /tmp/mytrace. To load the trace that was just saved: ``` trace load /tmp/mytrace thread trace dump instructions ``` You should see the instructions of the trace got printed.
To run a test: ``` cd ~/llvm-sand/build/Release/fbcode-x86_64/toolchain ninja lldb-dotest ./bin/lldb-dotest -p TestTraceSave ```
Reviewed By: wallace
Differential Revision: https://reviews.llvm.org/D107669
|
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTSessionFileParser.cpp |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTSessionSaver.cpp |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTJSONStructs.cpp |
 | lldb/source/Plugins/Trace/common/CMakeLists.txt |
 | lldb/source/Plugins/Trace/common/TraceSessionSaver.cpp |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTJSONStructs.h |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.cpp |
 | lldb/source/Plugins/Trace/common/TraceJSONStructs.cpp |
 | lldb/source/Plugins/Trace/intel-pt/CMakeLists.txt |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTOptions.td |
 | lldb/source/Plugins/Trace/common/TraceSessionFileParser.h |
 | lldb/source/Commands/Options.td |
 | lldb/source/Plugins/Trace/common/TraceJSONStructs.h |
 | lldb/source/Plugins/Trace/common/TraceSessionFileParser.cpp |
 | lldb/source/Plugins/Trace/common/TraceSessionSaver.h |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTSessionSaver.h |
 | lldb/source/Plugins/Trace/intel-pt/TraceIntelPTSessionFileParser.h |
 | lldb/test/API/commands/trace/TestTraceSave.py |
 | lldb/include/lldb/Target/Trace.h |
 | lldb/source/Commands/CommandObjectProcess.cpp |
Commit
64184b4af02095745047fc620a81646664395bd2
by Louis Dionne[libc++][NFC] Remove useless _LIBCPP_PUSH_MACROS
Only files that actually use min/max are required to do this dance.
Differential Revision: https://reviews.llvm.org/D108778
|
 | libcxx/include/__algorithm/equal.h |
 | libcxx/include/__iterator/projected.h |
 | libcxx/include/__utility/in_place.h |
 | libcxx/include/__memory/allocator.h |
 | libcxx/include/__iterator/readable_traits.h |
 | libcxx/include/__iterator/ostream_iterator.h |
 | libcxx/include/__iterator/insert_iterator.h |
 | libcxx/include/__algorithm/unique_copy.h |
 | libcxx/include/__memory/pointer_safety.h |
 | libcxx/include/__memory/raw_storage_iterator.h |
 | libcxx/include/__ranges/access.h |
 | libcxx/include/__algorithm/fill_n.h |
 | libcxx/include/__algorithm/lower_bound.h |
 | libcxx/include/__algorithm/reverse_copy.h |
 | libcxx/include/__algorithm/shift_left.h |
 | libcxx/include/__algorithm/reverse.h |
 | libcxx/include/__iterator/front_insert_iterator.h |
 | libcxx/include/__function_like.h |
 | libcxx/include/__algorithm/next_permutation.h |
 | libcxx/include/__algorithm/replace_if.h |
 | libcxx/include/__format/format_parse_context.h |
 | libcxx/include/__iterator/reverse_iterator.h |
 | libcxx/include/__algorithm/adjacent_find.h |
 | libcxx/include/__memory/addressof.h |
 | libcxx/include/__memory/uninitialized_algorithms.h |
 | libcxx/include/__iterator/prev.h |
 | libcxx/include/__algorithm/copy_backward.h |
 | libcxx/include/__algorithm/min_element.h |
 | libcxx/include/__algorithm/remove.h |
 | libcxx/include/__algorithm/move.h |
 | libcxx/include/__algorithm/is_permutation.h |
 | libcxx/include/numbers |
 | libcxx/include/__algorithm/replace.h |
 | libcxx/include/__iterator/default_sentinel.h |
 | libcxx/include/__utility/forward.h |
 | libcxx/include/__algorithm/find_if.h |
 | libcxx/include/__algorithm/fill.h |
 | libcxx/include/__algorithm/all_of.h |
 | libcxx/include/__iterator/empty.h |
 | libcxx/include/__algorithm/transform.h |
 | libcxx/include/__ranges/copyable_box.h |
 | libcxx/include/__algorithm/rotate_copy.h |
 | libcxx/include/__ranges/transform_view.h |
 | libcxx/include/__memory/auto_ptr.h |
 | libcxx/include/__memory/compressed_pair.h |
 | libcxx/include/__ranges/size.h |
 | libcxx/include/__ranges/empty_view.h |
 | libcxx/include/__utility/integer_sequence.h |
 | libcxx/include/__iterator/incrementable_traits.h |
 | libcxx/include/__algorithm/unique.h |
 | libcxx/include/__utility/as_const.h |
 | libcxx/include/__algorithm/find.h |
 | libcxx/include/__algorithm/set_union.h |
 | libcxx/include/__algorithm/comp_ref_type.h |
 | libcxx/include/__algorithm/sift_down.h |
 | libcxx/include/__algorithm/half_positive.h |
 | libcxx/include/__functional/unary_function.h |
 | libcxx/include/__iterator/iter_move.h |
 | libcxx/include/__memory/pointer_traits.h |
 | libcxx/include/__algorithm/push_heap.h |
 | libcxx/include/__utility/move.h |
 | libcxx/include/__iterator/iterator.h |
 | libcxx/include/__algorithm/minmax_element.h |
 | libcxx/include/__memory/unique_ptr.h |
 | libcxx/include/__functional/unwrap_ref.h |
 | libcxx/include/__iterator/back_insert_iterator.h |
 | libcxx/include/__utility/exchange.h |
 | libcxx/include/format |
 | libcxx/include/__algorithm/count_if.h |
 | libcxx/include/__algorithm/set_symmetric_difference.h |
 | libcxx/include/__algorithm/shuffle.h |
 | libcxx/include/__algorithm/set_intersection.h |
 | libcxx/include/memory |
 | libcxx/include/__ranges/drop_view.h |
 | libcxx/include/__algorithm/pop_heap.h |
 | libcxx/include/__algorithm/remove_if.h |
 | libcxx/include/__algorithm/search.h |
 | libcxx/include/__algorithm/shift_right.h |
 | libcxx/include/__utility/rel_ops.h |
 | libcxx/include/__algorithm/swap_ranges.h |
 | libcxx/include/__iterator/next.h |
 | libcxx/include/__iterator/common_iterator.h |
 | libcxx/include/__algorithm/count.h |
 | libcxx/include/__ranges/single_view.h |
 | libcxx/include/__algorithm/clamp.h |
 | libcxx/include/__algorithm/sort_heap.h |
 | libcxx/include/__functional/hash.h |
 | libcxx/include/__iterator/iterator_traits.h |
 | libcxx/include/__iterator/data.h |
 | libcxx/include/__algorithm/for_each_n.h |
 | libcxx/include/__algorithm/minmax.h |
 | libcxx/include/__ranges/data.h |
 | libcxx/include/__variant/monostate.h |
 | libcxx/include/__algorithm/rotate.h |
 | libcxx/include/__iterator/concepts.h |
 | libcxx/include/__algorithm/partition_copy.h |
 | libcxx/include/__node_handle |
 | libcxx/include/__algorithm/set_difference.h |
 | libcxx/include/__iterator/istreambuf_iterator.h |
 | libcxx/include/__memory/allocation_guard.h |
 | libcxx/include/__utility/pair.h |
 | libcxx/include/__iterator/advance.h |
 | libcxx/include/__algorithm/lexicographical_compare.h |
 | libcxx/include/__algorithm/partition_point.h |
 | libcxx/include/__algorithm/generate_n.h |
 | libcxx/include/__algorithm/remove_copy.h |
 | libcxx/include/__algorithm/copy_n.h |
 | libcxx/include/__algorithm/any_of.h |
 | libcxx/include/__algorithm/copy.h |
 | libcxx/include/__algorithm/binary_search.h |
 | libcxx/include/__utility/piecewise_construct.h |
 | libcxx/include/__algorithm/comp.h |
 | libcxx/include/__iterator/counted_iterator.h |
 | libcxx/include/__ranges/dangling.h |
 | libcxx/include/__algorithm/sort.h |
 | libcxx/include/__iterator/erase_if_container.h |
 | libcxx/include/__iterator/iter_swap.h |
 | libcxx/include/__algorithm/find_first_of.h |
 | libcxx/include/__algorithm/partial_sort_copy.h |
 | libcxx/include/__algorithm/replace_copy.h |
 | libcxx/include/__algorithm/copy_if.h |
 | libcxx/include/__algorithm/unwrap_iter.h |
 | libcxx/include/algorithm |
 | libcxx/include/__algorithm/is_heap_until.h |
 | libcxx/include/__algorithm/merge.h |
 | libcxx/include/optional |
 | libcxx/include/__algorithm/prev_permutation.h |
 | libcxx/include/__memory/temporary_buffer.h |
 | libcxx/include/ranges |
 | libcxx/include/__algorithm/partition.h |
 | libcxx/include/__iterator/reverse_access.h |
 | libcxx/include/__ranges/enable_borrowed_range.h |
 | libcxx/include/__algorithm/nth_element.h |
 | libcxx/include/__iterator/size.h |
 | libcxx/include/__iterator/distance.h |
 | libcxx/include/__ranges/empty.h |
 | libcxx/include/__algorithm/stable_sort.h |
 | libcxx/include/__memory/construct_at.h |
 | libcxx/include/__ranges/view_interface.h |
 | libcxx/include/experimental/algorithm |
 | libcxx/include/__algorithm/is_sorted.h |
 | libcxx/include/__algorithm/mismatch.h |
 | libcxx/include/__iterator/access.h |
 | libcxx/include/__algorithm/is_heap.h |
 | libcxx/include/__algorithm/iter_swap.h |
 | libcxx/include/__utility/swap.h |
 | libcxx/include/__algorithm/upper_bound.h |
 | libcxx/include/__algorithm/is_sorted_until.h |
 | libcxx/include/__algorithm/is_partitioned.h |
 | libcxx/include/__ranges/common_view.h |
 | libcxx/include/__ranges/ref_view.h |
 | libcxx/include/__algorithm/replace_copy_if.h |
 | libcxx/include/__utility/declval.h |
 | libcxx/include/__algorithm/for_each.h |
 | libcxx/include/__algorithm/stable_partition.h |
 | libcxx/include/__algorithm/partial_sort.h |
 | libcxx/include/__algorithm/generate.h |
 | libcxx/include/__iterator/wrap_iter.h |
 | libcxx/include/__utility/__decay_copy.h |
 | libcxx/include/__algorithm/none_of.h |
 | libcxx/include/__memory/shared_ptr.h |
 | libcxx/include/__algorithm/max_element.h |
 | libcxx/include/__algorithm/make_heap.h |
 | libcxx/include/__ranges/counted.h |
 | libcxx/include/__ranges/concepts.h |
 | libcxx/include/__algorithm/find_if_not.h |
 | libcxx/include/__iterator/istream_iterator.h |
 | libcxx/include/__algorithm/remove_copy_if.h |
 | libcxx/include/__utility/to_underlying.h |
 | libcxx/include/__format/format_error.h |
 | libcxx/include/__ranges/all.h |
 | libcxx/include/__ranges/enable_view.h |
 | libcxx/include/__iterator/ostreambuf_iterator.h |
 | libcxx/include/__algorithm/includes.h |
 | libcxx/include/__algorithm/find_end.h |
 | libcxx/include/__algorithm/move_backward.h |
 | libcxx/include/__iterator/move_iterator.h |
 | libcxx/include/__algorithm/equal_range.h |
 | libcxx/include/__algorithm/search_n.h |
Commit
c8b14c03ec741f672f0ca1370ecdd9415d7eca7c
by Louis Dionne[libc++][NFC] Fix include guard for decay_copy.h and remove underscores from the header
We don't use double underscores for private header names when they are in a subdirectory with double underscores already.
Differential Revision: https://reviews.llvm.org/D108820
|
 | libcxx/include/__utility/__decay_copy.h |
 | libcxx/include/thread |
 | libcxx/include/__ranges/access.h |
 | libcxx/test/libcxx/diagnostics/detail.headers/utility/__decay_copy.module.verify.cpp |
 | libcxx/test/libcxx/diagnostics/detail.headers/utility/decay_copy.module.verify.cpp |
 | libcxx/include/__ranges/counted.h |
 | libcxx/include/__utility/decay_copy.h |
 | libcxx/include/__ranges/all.h |
 | libcxx/include/CMakeLists.txt |
 | libcxx/include/future |
 | libcxx/include/module.modulemap |
 | libcxx/include/__ranges/size.h |
Commit
e57205b555e116588787af36b4a00ff1dc97bb04
by llvmgnsyncbot[gn build] Port c8b14c03ec74
|
 | llvm/utils/gn/secondary/libcxx/include/BUILD.gn |
Commit
eae90fdc75011f5aee75f33a86d4f4dec93984a3
by listmail[test] exercise breakLoopBackedge with a switch latch cond
This was reduced from a test case which triggered a revert to my recent change to same function. It turns out we didn't have *any* coverage of the non-branch latch and my patch was blatantly broken.
|
 | llvm/test/Transforms/LoopDeletion/switch.ll |
Commit
3ec634e65a02d5f443cc982e9e00ec4e51143d07
by martin[libcxx] Use GetSystemTimePreciseAsFileTime() if available
We will try to use GetSystemTimePreciseAsFileTime if possible. Reference: https://sourceforge.net/p/mingw-w64/mingw-w64/ci/59195b2d7fe26549f70969b0dd487293819f023e/.
Reviewed By: compnerd, #libc, mstorsjo, ldionne
Differential Revision: https://reviews.llvm.org/D104987
|
 | libcxx/src/chrono.cpp |
Commit
0eeab8b2825ca9582b211fb5fbe782f702b30db7
by craig.topper[RISCV] Add -riscv-v-fixed-length-vector-elen-max to limit the ELEN used for fixed length vectorization.
This adds an ELEN limit for fixed length vectors. This will scalarize any elements larger than this. It will also disable some fractional LMULs. For example, if ELEN=32 then mf8 becomes illegal, i32/f32 vectors can't use any fractional LMULs, i16/f16 can only use mf2, and i8 can use mf2 and mf4.
We may also need something for the scalable vectors, but that has interactions with the intrinsics and we can't scalarize a scalable vector.
Longer term this should come from one of the Zve* features
|
 | llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll |
 | llvm/lib/Target/RISCV/RISCVSubtarget.h |
 | llvm/lib/Target/RISCV/RISCVISelLowering.cpp |
 | llvm/lib/Target/RISCV/RISCVSubtarget.cpp |
Commit
54e8cae565294059048f8dd88958c4a2a317a1c2
by simon.cook[MC][RISCV] Add RISCV MCObjectFileInfo
This makes sure, that the text section will have a 2-byte alignment, if the +c extension is enabled.
Reviewed By: MaskRay, luismarques
Differential Revision: https://reviews.llvm.org/D102052
|
 | llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCObjectFileInfo.h |
 | llvm/test/MC/RISCV/align.s |
 | llvm/include/llvm/MC/MCObjectFileInfo.h |
 | llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCObjectFileInfo.cpp |
 | llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp |
 | llvm/lib/MC/MCELFStreamer.cpp |
 | llvm/lib/MC/MCObjectFileInfo.cpp |
 | llvm/lib/Target/RISCV/MCTargetDesc/CMakeLists.txt |
Commit
6734018041e408fe3cad13f2782d8048437de405
by lebedev.ri[Codegen][X86] EltsFromConsecutiveLoads(): if only have AVX1, ensure that the "load" is actually foldable (PR51615)
This fixes another reproducer from https://bugs.llvm.org/show_bug.cgi?id=51615 And again, the fix lies not in the code added in D105390
In this case, we completely don't check that the "broadcast-from-mem" we create can actually fold the load. In this case, it's operand was not a load at all: ``` Combining: t16: v8i32 = vector_shuffle<0,u,u,u,0,u,u,u> t14, undef:v8i32 Creating new node: t29: i32 = undef RepeatLoad: t8: i32 = truncate t7 t7: i64 = extract_vector_elt t5, Constant:i64<0> t5: v2i64,ch = load<(load (s128) from %ir.arg)> t0, t2, undef:i64 t2: i64,ch = CopyFromReg t0, Register:i64 %0 t1: i64 = Register %0 t4: i64 = undef t3: i64 = Constant<0> Combining: t15: v8i32 = undef
```
Reviewed By: RKSimon
Differential Revision: https://reviews.llvm.org/D108821
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pr51615.ll |
Commit
6a82376012f519b6ef630a662d7b1e204e638eff
by listmailSpecial case common branch patterns in breakLoopBackedge (try 2)
Changes since aec08e: * Adjust placement of a closing brace so that the general case actually runs. Turns out we had *no* coverage of the switch case. I added one in eae90fd. * Drop .llvm.loop.* metadata from the new branch as there is no longer a loop to annotate.
Original commit message:
This special cases an unconditional latch and a conditional branch latch exit to improve codegen and test readability. I am hoping to reuse this function in the runtime unroll code, but without this change, the test diffs are far too complex to assess.
|
 | llvm/test/Transforms/LoopDeletion/zero-btc.ll |
 | llvm/test/Transforms/LoopDeletion/noop-loops-with-subloops.ll |
 | llvm/test/Transforms/LoopDeletion/pr49967.ll |
 | llvm/test/Transforms/LoopDeletion/unreachable-loops.ll |
 | llvm/test/Transforms/LoopDeletion/loops-with-irreducible-subloops.ll |
 | llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll |
 | llvm/test/Transforms/IndVarSimplify/exit_value_test2.ll |
 | llvm/lib/Transforms/Utils/LoopUtils.cpp |
Commit
d4d008f7d753af55e685410bcdf12395745ed3b8
by llvmgnsyncbot[gn build] Port 54e8cae56529
|
 | llvm/utils/gn/secondary/llvm/lib/Target/RISCV/MCTargetDesc/BUILD.gn |
Commit
fe177a1773e4f88dde1aa37d34a0d3f8cb582f14
by jasonliu.developmentFix assertion when passing function into inline asm's input operand
This seem to be a regression caused by this change: https://reviews.llvm.org/D60943. Since we delayed report the error, we would run into some invalid state in clang and llvm.
Without this fix, clang would assert when passing function into inline asm's input operand.
Differential Revision: https://reviews.llvm.org/D107941
|
 | clang/test/CodeGen/asm-call-func.c |
 | clang/lib/Sema/SemaStmtAsm.cpp |
Commit
caa3b28260cf4af02a4a684921e1fecf0e44725a
by johannes[Attributor][FIX] Do not treat byval args as local memory (for now)
For now we do should not treat byval arguments as local copies performed on the call edge, though, in general we should. To make that happen we need to teach various passes, e.g., DSE, about the copy effect of a byval. That would also allow us to mark functions only accessing byval arguments as readnone again, atguably their acceses have no effect outside of the function, like accesses to allocas.
Reviewed By: kuter
Differential Revision: https://reviews.llvm.org/D108140
|
 | llvm/test/Transforms/Attributor/value-simplify.ll |
 | llvm/test/Transforms/Attributor/ArgumentPromotion/byval.ll |
 | llvm/lib/Transforms/IPO/AttributorAttributes.cpp |
 | llvm/test/Transforms/Attributor/ArgumentPromotion/byval-2.ll |
 | llvm/test/Transforms/Attributor/readattrs.ll |
 | llvm/test/Transforms/Attributor/ArgumentPromotion/attrs.ll |
 | llvm/test/Transforms/Attributor/IPConstantProp/2009-09-24-byval-ptr.ll |
Commit
e05940de2a76df8ce77f943d9b8bc81322a03354
by johannes[Attributor][FIX] Recursion via memory needs to be tracked explicitly
Recursion can happen when we see a PHI use the second time or when we look at a store value operand use again. We already visited the potential copies and doing so again will just cause endless looping.
Reviewed By: kuter
Differential Revision: https://reviews.llvm.org/D108190
|
 | llvm/lib/Transforms/IPO/Attributor.cpp |
 | llvm/test/Transforms/Attributor/value-simplify-pointer-info.ll |
Commit
2930c839a5877356db6966409f4f9f2cdbcf3a07
by johannes[OpenMP][FIX] Allow declare variant to work with reference types
Reference types in the return or parameter position did cause the OpenMP declare variant overload reasoning to give up. We should allow them as we allow any other type.
This should fix the bug reported on the mailing list: https://lists.llvm.org/pipermail/openmp-dev/2021-August/004094.html
Reviewed By: ABataev, pdhaliwal
Differential Revision: https://reviews.llvm.org/D108774
|
 | clang/test/AST/ast-dump-openmp-begin-declare-variant_reference.cpp |
 | clang/lib/AST/ASTContext.cpp |
Commit
ed367b9dff10ee1df9ac1984eb2ad7544da7ab06
by mydeveloperday[clang-format] [PR51640] - New AfterEnum brace wrapping changes have cause C# behaviour to change
LLVM 13.0.0-rc2 shows change of behaviour in enum and interface BraceWrapping (likely before we simply didn't wrap) but may be related to {D99840}
Logged as https://bugs.llvm.org/show_bug.cgi?id=51640
This change ensure AfterEnum works for
`internal|public|protected|private enum A {` in the same way as it works for `enum A {` in C++
A similar issue was also observed with `interface` in C#
Reviewed By: krasimir, owenpan
Differential Revision: https://reviews.llvm.org/D108810
|
 | clang/unittests/Format/FormatTestCSharp.cpp |
 | clang/lib/Format/TokenAnnotator.cpp |
Commit
31e61c58b0663d2706a1166dd354ba8e282565ec
by haowei[ifs] Add option to hide undefined symbols
This change add an option to llvm-ifs to hide undefined symbols from its output.
Differential Revision: https://reviews.llvm.org/D108428
|
 | llvm/lib/InterfaceStub/IFSHandler.cpp |
 | llvm/include/llvm/InterfaceStub/IFSHandler.h |
 | llvm/tools/llvm-ifs/llvm-ifs.cpp |
 | llvm/test/tools/llvm-ifs/strip-undefined-symbols.test |
Commit
9dd74ee3f08e029bac00257cfc8ab8412cbcea6c
by aeubanks[test] More test precommits for D108734
|
 | llvm/test/Transforms/InstCombine/invariant.group.ll |
Commit
2f69c82cec1ae05b4fdcef4ac48f48e9e2bad32b
by mgorny[llvm] [lit] Support forcing lexical test order
Add a new --order option to choose between available test orders: the default "smart" order, predictable "lexical" order or "random" order. Default to using lexical order and one job in the lit test suite.
Differential Revision: https://reviews.llvm.org/D107695
|
 | llvm/utils/lit/tests/shtest-format-argv0.py |
 | llvm/utils/lit/tests/shtest-run-at-line.py |
 | llvm/utils/lit/tests/test-data-micro.py |
 | llvm/utils/lit/lit/main.py |
 | llvm/utils/lit/tests/googletest-format.py |
 | llvm/utils/lit/tests/shtest-recursive-substitution.py |
 | llvm/utils/lit/tests/googletest-discovery-failed.py |
 | llvm/utils/lit/tests/test-output-micro.py |
 | llvm/utils/lit/tests/googletest-timeout.py |
 | llvm/utils/lit/tests/googletest-upstream-format.py |
 | llvm/utils/lit/tests/custom-result-category.py |
 | llvm/utils/lit/tests/progress-bar.py |
 | llvm/utils/lit/tests/shtest-format.py |
 | llvm/utils/lit/tests/discovery.py |
 | llvm/utils/lit/tests/shtest-not.py |
 | llvm/utils/lit/tests/shtest-env.py |
 | llvm/utils/lit/tests/test-output.py |
 | llvm/utils/lit/tests/test-data.py |
 | llvm/utils/lit/tests/shtest-output-printing.py |
 | llvm/docs/CommandGuide/lit.rst |
 | llvm/utils/lit/tests/ignore-fail.py |
 | llvm/utils/lit/tests/shtest-inject.py |
 | llvm/utils/lit/tests/lit.cfg |
 | llvm/utils/lit/lit/cl_arguments.py |
 | llvm/utils/lit/tests/reorder.py |
 | llvm/utils/lit/tests/allow-retries.py |
 | llvm/utils/lit/tests/max-failures.py |
 | llvm/utils/lit/tests/lit-opts.py |
 | llvm/utils/lit/tests/shtest-keyword-parse-errors.py |
 | llvm/utils/lit/tests/shtest-shell.py |
Commit
dbf0d8118ccbfd09def0974bf671c39e94d0be93
by craig.topper[RISCV] Use ~0ULL instead of ~0U when checking for invalid ErrorInfo.
ErrorInfo is a uint64_t and is initialized to all 1s.
Not sure how to test this. Noticed while working on .insn support.
|
 | llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp |
Commit
8f859cc34966ede0054842cb5243536f9572b708
by AkiraUse std::less instead of operator < in less_first and less_second
According to the standard, if p1 and p2 are both pointers, p1 < p2 and p2 < p1 can both be false in theory in some cases:
https://eel.is/c++draft/expr.rel#4.3
std::less<void> yields a implementation-defined strict total order over pointers:
https://eel.is/c++draft/comparisons.general
Differential Revision: https://reviews.llvm.org/D108733
|
 | llvm/include/llvm/ADT/STLExtras.h |
Commit
1b05245119ddb7279a2ae55319b2ae82aac306db
by zequanwu[Profile] Support __llvm_profile_set_file_object in continuous mode.
Replace D107203, because __llvm_profile_set_file_object is usually used when the process doesn't have permission to open/create file. That patch trying to copy from old profile to new profile contradicts with the usage.
Differential Revision: https://reviews.llvm.org/D108242
|
 | compiler-rt/test/profile/ContinuousSyncMode/set-file-object.c |
 | compiler-rt/lib/profile/InstrProfilingFile.c |
 | compiler-rt/lib/profile/InstrProfiling.h |
Commit
4cacb5cad052b14d37703157f3b7ffc6a6610acc
by v.churavy[MergeICmps] Don't merge icmps derived from pointers with addressspaces
IIUC we can't emit `memcmp` between pointers in addressspaces, doing so will trigger an assertion since the signature of the memcmp will not match it's arguments (https://bugs.llvm.org/show_bug.cgi?id=48661).
This PR disables the attempt to merge icmps, when the pointer is in an addressspace.
Reviewed By: #julialang, vtjnash
Differential Revision: https://reviews.llvm.org/D94813
|
 | llvm/test/Transforms/MergeICmps/X86/addressspaces.ll |
 | llvm/lib/Transforms/Scalar/MergeICmps.cpp |
Commit
97ae9193dfe180dcd353a0c80465a9c74781fab6
by aeubanks[test] Precommit test for D108837
|
 | llvm/test/Transforms/SimplifyCFG/fold-branch-to-common-dest-free-cost.ll |
Commit
f89ebe108e6f316a7ef293869e420491992b84cc
by eugenisSupport LLVM_ENABLE_PER_TARGET_RUNTIME_DIR in the sanitizer symbolizer build.
In this mode libc++ headers end up in two directories: * include/<triple>/c++/v1 for the site config header * include/c++/v1 for everything else
Also switch from -I to -isystem.
Differential Revision: https://reviews.llvm.org/D108841
|
 | compiler-rt/lib/sanitizer_common/symbolizer/scripts/build_symbolizer.sh |
Commit
4e1a164d7bd53653f79decc121afe784d2fde0a7
by mcgrathr[libc] Fix various -Wconversion warnings in strto*l test code.
The Fuchsia build compiles the libc and test code with lots of warnings enabled, including all the integer conversion warnings. There was some sloppy type usage here that triggered some of those.
Reviewed By: michaelrj
Differential Revision: https://reviews.llvm.org/D108800
|
 | libc/test/src/stdlib/strtoll_test.cpp |
 | libc/test/src/stdlib/strtoull_test.cpp |
 | libc/test/src/stdlib/strtol_test.cpp |
 | libc/test/src/stdlib/strtoul_test.cpp |
Commit
225eb8a22d416c1c7405770165c3291ab0ee3dba
by mcgrathr[libc][NFC] Fix onre more -Wconversion warning in strtoul test code.
The last change missed one spot.
Differential Revision: https://reviews.llvm.org/D108845
|
 | libc/test/src/stdlib/strtoul_test.cpp |
Commit
9632ce14e4145187b5fe404bc45f092392fd4346
by pirama[lld/test/ELF] Test fetch from archive to resolve undefined symbols in shared libs
Add missing test coverage uncovered in review of D108006.
Differential Revision: https://reviews.llvm.org/D108328
|
 | lld/test/ELF/dso-undef-extract-lazy.s |
Commit
c7b25e4359962f69890345aaf1b3aa4e440fbda7
by listmail[LoopDeletion] Use max trip count to break backedge in addition to exact one
We'd added support a while back from breaking the backedge if SCEV can prove the trip count is zero. However, we used the exact trip count which requires *all* exits be analyzeable. I noticed while writing test cases for another patch that this disallows cases where one exit is provably taken paired with another which is unknown. This patch adds the upper bound case.
We could use a symbolic max trip count here instead, but we use an isKnownNonZero filter (presumably for compile time?) for the first-iteration reasoning. I decided this was a more obvious incremental step, and we could go back and untangle the schemes separately.
Differential Revision: https://reviews.llvm.org/D108833
|
 | llvm/lib/Transforms/Scalar/LoopDeletion.cpp |
 | llvm/test/Transforms/LoopDeletion/zero-btc.ll |
 | llvm/test/Transforms/LoopDeletion/switch.ll |
Commit
696e7905a142a2c422c6b1485857c900dbdd14fb
by owenca[clang-format] [NFC] Fix the coding style of unit tests header file
|
 | clang/unittests/Format/TestLexer.h |
Commit
757409da7a69f3b0ab23687642dc5edf2061bc51
by nikita.ppv[MergeICmps] Ignore clobbering instructions before the loads
This is another followup to D106591. Even if there is an instruction that clobbers one of the loads, this doesn't matter if it happens before the loads. Those instructions aren't affected by the transform at all.
The gep-references-bb.ll is modified to preserve the spirit of the test, as the store to @g no longer impacts the transform.
Differential Revision: https://reviews.llvm.org/D108782
|
 | llvm/test/Transforms/MergeICmps/X86/split-block-does-work.ll |
 | llvm/test/Transforms/MergeICmps/X86/gep-references-bb.ll |
 | llvm/lib/Transforms/Scalar/MergeICmps.cpp |
Commit
56e372b56e293710f9411cfc63573755f1370f54
by johannes[Attributor][NFC] Silence unused variable warning
|
 | llvm/lib/Transforms/IPO/AttributorAttributes.cpp |
Commit
170a3c6f7a0599707d8ea5cfb1bc4252920edef7
by owenca[clang-format] Fix AllowAllConstructorInitializersOnNextLine value
The default value of the now deprecated AllowAllConstructorInitializersOnNextLine was always true regardless of the value of BasedOnStyle. This patch fixes the typo in the code that handles the related backward compatibility.
|
 | clang/lib/Format/Format.cpp |
Commit
063af63b9664151b3a9206feefa9a6a36a471e80
by andrew.litteken[IRSim][IROutliner] Canonicalizing commutative value numbering between similarity sections.
When the initial relationship between two pairs of values between similar sections is ambiguous to commutativity, arguments to the outlined functions can be passed in such that the order is incorrect, causing miscompilations. This adds a canonical mapping to each similarity section, so that we can maintain the relationship of global value numbering from one section to another.
Added Tests: Transforms/IROutliner/outlining-commutative-operands-opposite-order.ll unittests/Analysis/IRSimilarityIdentifierTest.cpp - IRSimilarityCandidate:CanonicalNumbering
Reviewers: jroelofs, jpaquette, yroux
Differential Revision: https://reviews.llvm.org/D104143
|
 | llvm/include/llvm/Transforms/IPO/IROutliner.h |
 | llvm/include/llvm/Analysis/IRSimilarityIdentifier.h |
 | llvm/lib/Transforms/IPO/IROutliner.cpp |
 | llvm/lib/Analysis/IRSimilarityIdentifier.cpp |
 | llvm/unittests/Analysis/IRSimilarityIdentifierTest.cpp |
 | llvm/test/Transforms/IROutliner/outlining-commutative-operands-opposite-order.ll |
Commit
0a7b8cc5dd8efadeef07bf6e4e93c7df2ebe7220
by ajcbik[mlir][sparse] fully implement sparse tensor to sparse tensor conversions
with rigorous integration test
Reviewed By: bixia
Differential Revision: https://reviews.llvm.org/D108721
|
 | mlir/test/Dialect/SparseTensor/conversion.mlir |
 | mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorConversion.cpp |
 | mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_conversion.mlir |
Commit
5c91b98c5d45243352bf10262454bcac77cd3fed
by ndesaulniers[ARMISelLowering] avoid emitting libcalls to __mulodi4()
__has_builtin(__builtin_mul_overflow) returns true for 32b ARM targets, but Clang is deferring to compiler RT when encountering `long long` types. This breaks sanitizer builds of the Linux kernel that are using __builtin_mul_overflow with these types for these targets.
If the semantics of __has_builtin mean "the compiler resolves these, always" then we shouldn't conditionally emit a libcall.
This will still need to be worked around in the Linux kernel in order to continue to support allmodconfig builds of the Linux kernel for this target with older releases of clang.
Link: https://bugs.llvm.org/show_bug.cgi?id=28629 Link: https://github.com/ClangBuiltLinux/linux/issues/1438
Reviewed By: rengolin
Differential Revision: https://reviews.llvm.org/D108842
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/ARM/overflow-intrinsic-optimizations.ll |
Commit
c8c176d999d2c2166dee8d67c32b4f8f42b4f1bd
by ndesaulniers[MipsISelLowering] avoid emitting libcalls to __mulodi4()
__has_builtin(__builtin_mul_overflow) returns true for 32b MIPS targets, but Clang is deferring to compiler RT when encountering `long long` types. This breaks sanitizer builds of the Linux kernel that are using __builtin_mul_overflow with these types for these targets.
If the semantics of __has_builtin mean "the compiler resolves these, always" then we shouldn't conditionally emit a libcall.
This will still need to be worked around in the Linux kernel in order to continue to support malta_defconfig builds of the Linux kernel for this target with older releases of clang.
Link: https://bugs.llvm.org/show_bug.cgi?id=28629 Link: https://github.com/ClangBuiltLinux/linux/issues/1438
Reviewed By: rengolin
Differential Revision: https://reviews.llvm.org/D108844
|
 | llvm/test/CodeGen/Mips/overflow-intrinsic-optimizations.ll |
 | llvm/lib/Target/Mips/MipsISelLowering.cpp |
Commit
012b664b2ea705276b9a244334c6fff402783799
by michaelrj[compiler-rt] fix real strlens that were missed
In reviews.llvm.org/D108316 I missed a few instances of REAL(strlen) and this change fixes that, as well as restoring one that seems like it shouldn't have been changed.
Reviewed By: hctim, vitalybuka
Differential Revision: https://reviews.llvm.org/D108843
|
 | compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc |
Commit
4dde7064e745c855f1fa9503b3ae7f710d1e54b2
by michaelrj[compiler-rt][obvious] fix typo, delete paren
I should've deleted a parenthesis on line 4222 in https://reviews.llvm.org/D108843 and this patch fixes it.
Differential Revision: https://reviews.llvm.org/D108852
|
 | compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc |
Commit
84013d7093c929061073c276a374c72ee77755f9
by David CARLIER[Sanitizers] wordexp interceptor build fix on FreeBSD.
Reviewers: vitalybuka
Reviewed-By: vitalybuka
Differential Revision: https://reviews.llvm.org/D108838
|
 | compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h |
 | compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp |
Commit
c0b70def210edfa52c0165682fecf080166b468f
by joker.ephSpecify argument to be `const` for `debugString()` helper (NFC)
This allows using this helper with rvalues.
|
 | mlir/include/mlir/Support/DebugStringHelper.h |
Commit
32b280809f4755177feb8a82fc7a632efa3bf469
by dblaikieTypePrinter:printTo remove redundant parameter (IsPack/SkipBrackets)
|
 | clang/lib/AST/TypePrinter.cpp |
Commit
4387975170112ad51a6cb57b5b77ebd72cc73c57
by joker.ephUse a universal reference (&& instead of const &) for `debugString()` helper (NFC)
Some classes like mlir::Operation have a non-const print() method.
|
 | mlir/include/mlir/Support/DebugStringHelper.h |
Commit
022538f2764a255bd2c0da3a247791e764933a93
by joker.ephRemove `const` from `const T &&` in debugString() helper to make it a universal reference (NFC)
It broke lvalue arguments otherwise:
|
 | mlir/include/mlir/Support/DebugStringHelper.h |
Commit
a4a5c00b53d0638e2bd9011fa5cce7ef9739eea6
by vsapsai[Modules] Change result of reading AST block to llvm::Error instead
Reading the AST block can never fail with a recoverable error as modules cannot be removed during this phase. Change the return type of these functions to return an llvm::Error instead, ie. either success or failure.
NFC other than the wording of some of the errors.
Differential Revision: https://reviews.llvm.org/D108268
|
 | clang/include/clang/Serialization/ASTReader.h |
 | clang/lib/Serialization/ASTReader.cpp |
Commit
28be02f33493f924d92b74b374e4d0bd6d1aaa63
by thakis[lld/mac] Don't assert on -dead_strip + arm64 range extension thunks
The assert is harmless and thinks worked fine in builds with asserts enabled, but it's still nice to fix the assert.
Differential Revision: https://reviews.llvm.org/D108853
|
 | lld/MachO/ConcatOutputSection.cpp |
 | lld/test/MachO/arm64-thunks.s |
Commit
89f546f6ba1c21041f1e44657cb9980baf4cd4e6
by luxufan[JITLink][RISCV] Support GOT/PLT relocations
This patch add the R_RISCV_GOT_HI20 and R_RISCV_CALL_PLT relocation support. And the basic got/plt was implemented. Because of riscv32 and riscv64 has different pointer size, the got entry size and instructions of plt entry is different. This patch is the basic support, the optimization pass at preFixup stage has not been implemented.
Reviewed By: lhames
Differential Revision: https://reviews.llvm.org/D107688
|
 | llvm/test/ExecutionEngine/JITLink/RISCV/ELF_riscv64_got_plt_reloc.s |
 | llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp |
 | llvm/include/llvm/ExecutionEngine/JITLink/riscv.h |
 | llvm/test/ExecutionEngine/JITLink/RISCV/ELF_riscv32_got_plt_reloc.s |