Commit
bdd7c53dc5e0fc3c3fde408df2fd187b11bb8330
by zixuan.wu[CSKY] Add compressed instruction mapping between 32-bit and 16-bit instruction
Add all CompressPat to map instructions between 16-bit and 32-bit with using the CompressInstEmitter infra. Although it's only used in asm printer, also enable it in asm parser to debug mapping when -enable-csky-asm-compressed-inst is on.
Differential Revision: https://reviews.llvm.org/D115026
|
 | llvm/lib/Target/CSKY/CMakeLists.txt (diff) |
 | llvm/lib/Target/CSKY/CSKYAsmPrinter.h (diff) |
 | llvm/lib/Target/CSKY/CSKYInstrInfo.td (diff) |
 | llvm/lib/Target/CSKY/CSKYRegisterInfo.td (diff) |
 | llvm/test/MC/CSKY/basic-16bit.s (diff) |
 | llvm/test/CodeGen/CSKY/base-i.ll (diff) |
 | llvm/lib/Target/CSKY/CSKYInstrFormats16Instr.td (diff) |
 | llvm/lib/Target/CSKY/CSKYInstrInfo16Instr.td (diff) |
 | llvm/test/MC/CSKY/compressed-inst.s |
 | llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp (diff) |
 | llvm/lib/Target/CSKY/AsmParser/CSKYAsmParser.cpp (diff) |
Commit
c41b3b0fa0f4f70aad8deaf48bcd42a04385066c
by owenpiano[clang-format] Adjust braced list detection
This avoids mishandling nested compound statements that are followed by another compound statement.
Fixes https://llvm.org/PR38314 and https://llvm.org/PR48305.
Differential Revision: https://reviews.llvm.org/D114583
|
 | clang/lib/Format/UnwrappedLineParser.cpp (diff) |
 | clang/unittests/Format/FormatTest.cpp (diff) |
Commit
69bcff46bff34838c91880ecaa6616bb6979cd23
by gysit[mlir][linalg] Pad independent of application order (NFC).
This revision makes the padding pattern independent of the application order. It addresses the concern that we cannot rely on the execution order of the greedy rewriter (https://reviews.llvm.org/D114689). Instead, the pattern is updated to apply repeatedly till all operations are padded.
Reviewed By: mehdi_amini
Differential Revision: https://reviews.llvm.org/D114851
|
 | mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp (diff) |
 | mlir/lib/Dialect/Linalg/Transforms/LinalgStrategyPasses.cpp (diff) |
Commit
caf89c0db679f79ca6c9a75c5acc6151dd380f26
by nicolas.vasilache[mlir][Vector] Support 0-D vectors in `ConstantMaskOp`
To support creating both a mask with just a single `true` and `false` values, I had to relax the restriction in the verifier that the rank is always equal to the length of the attribute array, in other words, we now allow:
- `vector.constant_mask [0] : vector<i1>` which gets lowered to `arith.constant dense<false> : vector<i1>` - `vector.constant_mask [1] : vector<i1>` which gets lowered to `arith.constant dense<true> : vector<i1>`
(the attribute list for the 0-D case must be a singleton containing either `0` or `1`)
Reviewed By: nicolasvasilache
Differential Revision: https://reviews.llvm.org/D115023
|
 | mlir/test/Dialect/Vector/ops.mlir (diff) |
 | mlir/test/Integration/Dialect/Vector/CPU/test-0-d-vectors.mlir (diff) |
 | mlir/include/mlir/Dialect/Vector/VectorOps.td (diff) |
 | mlir/lib/Dialect/Vector/VectorOps.cpp (diff) |
 | mlir/test/Dialect/Vector/invalid.mlir (diff) |
 | mlir/lib/Dialect/Vector/VectorTransforms.cpp (diff) |
 | mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir (diff) |
Commit
b15d77928e2b44d1667391d4650e61f1ab76bded
by npopov[llvm-c] Add header deprecations
This adds support for header deprecation using LLVM_ATTRIBUTE_C_DEPRECATED (note that we can't use LLVM_ATTRIBUTE_DEPRECATED, which is C++ specific). This will not help people using the FFI interface, but may help people using the C headers.
Differential Revision: https://reviews.llvm.org/D114936
|
 | llvm/include/llvm-c/Deprecated.h |
 | llvm/include/llvm-c/Core.h (diff) |
Commit
cb4d0bf9976ccb0da2850ea894254635f96fa9c2
by springerm[mlir][linalg][bufferize][NFC] Collect equivalent FuncOp BBArgs in PostAnalysisStep
Collect equivalent BBArgs right after the equivalence analysis of the FuncOp and before bufferizing. This is in preparation of decoupling bufferization from aliasInfo.
Also gather equivalence info for CallOps, which was missing in the previous commit.
Differential Revision: https://reviews.llvm.org/D114847
|
 | mlir/include/mlir/Dialect/Linalg/ComprehensiveBufferize/BufferizableOpInterface.h (diff) |
 | mlir/include/mlir/Dialect/Linalg/ComprehensiveBufferize/ComprehensiveBufferize.h (diff) |
 | mlir/test/Dialect/Linalg/comprehensive-module-bufferize.mlir (diff) |
 | mlir/test/Dialect/Linalg/comprehensive-module-bufferize-analysis.mlir (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ComprehensiveBufferize.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ModuleBufferization.cpp (diff) |
Commit
3ec6b1bfacebd65450662c75215a96ae59769368
by nicolas.vasilache[mlir] Add default implementations for methods in `TilingInterface`.
Adding the default implementation of `getLoopIteratorTypes` and `getLoopBounds` allows ExternalModels to override these methods.
Reviewed By: nicolasvasilache
Differential Revision: https://reviews.llvm.org/D115101
|
 | mlir/include/mlir/Interfaces/TilingInterface.td (diff) |
Commit
a96d8285101546c92116246939c2d53c57b88cf0
by pmatos[WebAssembly] Implementation of intrinsic for ref.null and HeapType removal
This patch implements the intrinsic for ref.null. In the process of implementing int_wasm_ref_null_func() and int_wasm_ref_null_extern() intrinsics, it removes the redundant HeapType.
This also causes the textual assembler syntax for ref.null to change. Instead of receiving an argument: `func` or `extern`, the instruction mnemonic is either ref.null_func or ref.null_extern, without the need for a further operand.
Reviewed By: tlively
Differential Revision: https://reviews.llvm.org/D114979
|
 | llvm/include/llvm/IR/Intrinsics.td (diff) |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrRef.td (diff) |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.h (diff) |
 | llvm/utils/TableGen/IntrinsicEmitter.cpp (diff) |
 | llvm/lib/IR/Function.cpp (diff) |
 | llvm/include/llvm/IR/IntrinsicsWebAssembly.td (diff) |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCCodeEmitter.cpp (diff) |
 | llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.cpp (diff) |
 | llvm/lib/Target/WebAssembly/WebAssemblyMCInstLower.cpp (diff) |
 | llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td (diff) |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyInstPrinter.cpp (diff) |
 | llvm/test/MC/WebAssembly/reference-types.s (diff) |
 | llvm/lib/Target/WebAssembly/Utils/WebAssemblyTypeUtilities.h (diff) |
 | llvm/test/CodeGen/WebAssembly/ref-null.ll |
 | llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp (diff) |
 | llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp (diff) |
 | llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp (diff) |
 | llvm/test/CodeGen/WebAssembly/funcref-call.ll (diff) |
 | llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h (diff) |
 | llvm/test/CodeGen/WebAssembly/funcref-table_call.ll (diff) |
Commit
e9fb4dc9e918e23384550df9b66c2fd87cb1ffdd
by springerm[mlir][linalg][bufferize] Remove buffer equivalence from bufferize
Remove all function calls related to buffer equivalence from bufferize implementations.
Add a new PostAnalysisStep for scf.for that ensures that yielded values are equivalent to the corresponding BBArgs. (This was previously checked in `bufferize`.) This will be relaxed in a subsequent commit.
Note: This commit changes two test cases. These were broken by design and should not have passed. With the new scf.for PostAnalysisStep, this bug was fixed.
Differential Revision: https://reviews.llvm.org/D114927
|
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ModuleBufferization.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/TensorInterfaceImpl.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/SCFInterfaceImpl.cpp (diff) |
 | mlir/test/Dialect/Linalg/comprehensive-module-bufferize-analysis.mlir (diff) |
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferizePass.cpp (diff) |
 | mlir/include/mlir/Dialect/Linalg/ComprehensiveBufferize/SCFInterfaceImpl.h (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/BufferizableOpInterface.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ArithInterfaceImpl.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/LinalgInterfaceImpl.cpp (diff) |
Commit
9873ef409c4a937c566e20e7a88af049d212ce03
by balazs.benics[analyzer] Ignore flex generated files
Some projects [1,2,3] have flex-generated files besides bison-generated ones. Unfortunately, the comment `"/* A lexical scanner generated by flex */"` generated by the tools is not necessarily at the beginning of the file, thus we need to quickly skim through the file for this needle string.
Luckily, StringRef can do this operation in an efficient way.
That being said, now the bison comment is not required to be at the very beginning of the file. This allows us to detect a couple more cases [4,5,6].
Alternatively, we could say that we only allow whitespace characters before matching the bison/flex header comment. That would prevent the (probably) unnecessary string search in the buffer. However, I could not verify that these tools would actually respect this assumption.
Additionally to this, e.g. the Twin project [1] has other non-whitespace characters (some preprocessor directives) before the flex-generated header comment. So the heuristic in the previous paragraph won't work with that. Thus, I would advocate the current implementation.
According to my measurement, this patch won't introduce measurable performance degradation, even though we will do 2 linear scans.
I introduce the ignore-bison-generated-files and ignore-flex-generated-files to disable skipping these files. Both of these options are true by default.
[1]: https://github.com/cosmos72/twin/blob/master/server/rcparse_lex.cpp#L7 [2]: https://github.com/marcauresoar/make-examples/blob/22362cdcf9dd7c597b5049ce7f176621e2e9ac7a/sandbox/count-words/lexer.c#L6 [3]: https://github.com/vladcmanea/2nd-faculty-year-Formal-Languages---Automata-assignments/blob/11abdf64629d9eb741438ba69f04636769d5a374/lab1/lex.yy.c#L6
[4]: https://github.com/KritikaChoudhary/System-Software-Lab/blob/47f5b2cfe2a2738fd54eae9f8439817f6a22034e/B_yacc/1/y1.tab.h#L2 [5]: https://github.com/VirtualMonitor/VirtualMonitor/blob/71d1bf9b1e7b392a7bd0c73dc217138dc5865651/src/VBox/Additions/x11/x11include/xorg-server-1.8.0/parser.h#L2 [6]: https://github.com/bspaulding/DrawTest/blob/3f773ceb13de14275429036b9cbc5aa19e29bab9/Framework/OpenEars.framework/Versions/A/Headers/jsgf_parser.h#L2
Reviewed By: xazax.hun
Differential Revision: https://reviews.llvm.org/D114510
|
 | clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp (diff) |
 | clang/test/Analysis/flexignore.c |
 | clang/test/Analysis/yaccignore.c (diff) |
 | clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def (diff) |
 | clang/test/Analysis/analyzer-config.c (diff) |
Commit
e761c49a14a8fb84898694d68218dba906aa9272
by springerm[mlir][linalg][bufferize][NFC] Utilize isWritable for FuncOps
This is a cleanup of ModuleBufferization. Instead of storing information about writable function arguments in BufferizationAliasInfo, we can use isWritable and make the decision there, based on dialect-specifc bufferization state.
Differential Revision: https://reviews.llvm.org/D114930
|
 | mlir/include/mlir/Dialect/Linalg/ComprehensiveBufferize/BufferizableOpInterface.td (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/BufferizationInterfaceImpl.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ModuleBufferization.cpp (diff) |
 | mlir/include/mlir/Dialect/Linalg/ComprehensiveBufferize/BufferizableOpInterface.h (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ArithInterfaceImpl.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/BufferizableOpInterface.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/ComprehensiveBufferize.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/SCFInterfaceImpl.cpp (diff) |
 | mlir/lib/Dialect/Linalg/ComprehensiveBufferize/LinalgInterfaceImpl.cpp (diff) |
Commit
e403f4fdc88322201040f2bee7b328e8a78e2f7f
by kbessonova[clang][DebugInfo] Allow function-local statics and types to be scoped within a lexical block
This is almost a reincarnation of https://reviews.llvm.org/D15977 originally implemented by Amjad Aboud. It was discussed on llvm-dev [0], committed with its backend counterpart [1], but finally reverted [2].
This patch makes clang to emit debug info for function-local static variables, records (classes, structs and unions) and typdefs correctly scoped if those function-local entites defined within a lexical (bracketed) block.
Before this patch, clang emits all those entities directly scoped in DISubprogram no matter where they were really defined, causing debug info loss (reported several times in [3], [4], [5]).
[0] https://lists.llvm.org/pipermail/llvm-dev/2015-November/092551.html [1] https://reviews.llvm.org/rG30e7a8f694a19553f64b3a3a5de81ce317b9ec2f [2] https://reviews.llvm.org/rGdc4531e552af6c880a69d226d3666756198fbdc8 [3] https://bugs.llvm.org/show_bug.cgi?id=19238 [4] https://bugs.llvm.org/show_bug.cgi?id=23164 [5] https://bugs.llvm.org/show_bug.cgi?id=44695
Reviewed By: dblaikie
Differential Revision: https://reviews.llvm.org/D113743
|
 | clang/lib/CodeGen/CGDebugInfo.cpp (diff) |
 | clang/lib/CodeGen/CGDebugInfo.h (diff) |
 | clang/test/CodeGenCXX/debug-info-lexcial-block.cpp |
 | clang/lib/CodeGen/CGDecl.cpp (diff) |
Commit
83f572527e0fcc1cd0be8ee23bc12abf27027daf
by marukawa[VE] Support multiple architectures installation
Change C++ header files placement to support multiple LLVM_RUNTIME_TARGETS build. Also modifies regression test for it.
Reviewed By: simoll
Differential Revision: https://reviews.llvm.org/D114527
|
 | clang/test/Driver/ve-toolchain.cpp (diff) |
 | clang/test/Driver/Inputs/basic_ve_tree/include/c++/v1/.keep |
 | clang/test/Driver/ve-toolchain.c (diff) |
 | clang/lib/Driver/ToolChains/VEToolchain.cpp (diff) |
 | clang/test/Driver/Inputs/basic_ve_tree/include/ve-unknown-linux-gnu/c++/v1/.keep |
 | clang/test/Driver/Inputs/basic_ve_tree/bin/.keep |
|
 | llvm/test/Transforms/LICM/scalar-promote.ll (diff) |
Commit
d8495e03529201e8af9abeab05a3f671d0249041
by david.green[ARM] Add a vrinta.f16.f16 alias
The v8.1-m ARMARM uses the vrinta.f16.f16 names, as opposed to vrinta.f16. This adds an alias for it in the same way that we have for f32 and f64.
Differential Revision: https://reviews.llvm.org/D68127
|
 | llvm/test/MC/ARM/fullfp16-neg.s (diff) |
 | llvm/test/MC/ARM/fullfp16.s (diff) |
 | llvm/lib/Target/ARM/ARMInstrVFP.td (diff) |
Commit
6b41eb7f26d06ce018c0218360f9cdec239f2caa
by marukawa[VE] Change to use R_VE_SREL32
Change to use R_VE_SREL32 for relative branch instructions instead of R_VE_PC_LO32 in order to check ranges of relative branch isntructions at link time correctly.
Reviewed By: simoll
Differential Revision: https://reviews.llvm.org/D115097
|
 | llvm/lib/Target/VE/MCTargetDesc/VEAsmBackend.cpp (diff) |
 | llvm/lib/Target/VE/MCTargetDesc/VEELFObjectWriter.cpp (diff) |
 | llvm/lib/Target/VE/MCTargetDesc/VEFixupKinds.h (diff) |
 | llvm/test/MC/VE/sym-br.s (diff) |
 | llvm/lib/Target/VE/MCTargetDesc/VEMCCodeEmitter.cpp (diff) |
Commit
0fbb17458a01a6b388fc67661ffb92969503e977
by ties.stuij[ARM] Implement setjmp BTI placement for PACBTI-M
This patch intends to guard indirect branches performed by longjmp by inserting BTI instructions after calls to setjmp.
Calls with 'returns-twice' are lowered to a new pseudo-instruction named t2CALL_BTI that is later expanded to a bundle of {tBL,t2BTI}.
This patch is part of a series that adds support for the PACBTI-M extension of the Armv8.1-M architecture, as detailed here:
https://community.arm.com/arm-community-blogs/b/architectures-and-processors-blog/posts/armv8-1-m-pointer-authentication-and-branch-target-identification-extension
The PACBTI-M specification can be found in the Armv8-M Architecture Reference Manual:
https://developer.arm.com/documentation/ddi0553/latest
The following people contributed to this patch:
- Alexandros Lamprineas - Ties Stuij
Reviewed By: labrinea
Differential Revision: https://reviews.llvm.org/D112427
|
 | clang/include/clang/Driver/Options.td (diff) |
 | llvm/lib/Target/ARM/ARM.td (diff) |
 | llvm/lib/Target/ARM/ARMInstrThumb2.td (diff) |
 | llvm/lib/Target/ARM/ARMISelLowering.cpp (diff) |
 | llvm/test/CodeGen/ARM/setjmp-bti-basic.ll |
 | clang/docs/ClangCommandLineReference.rst (diff) |
 | clang/test/Driver/arm-bti-return-twice.c |
 | clang/lib/Driver/ToolChains/Arch/ARM.cpp (diff) |
 | llvm/lib/Target/ARM/ARMISelLowering.h (diff) |
 | llvm/test/CodeGen/ARM/setjmp-bti-outliner.ll |
 | llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp (diff) |
 | llvm/lib/Target/ARM/ARMSubtarget.h (diff) |
Commit
9d20fa09eb806cd210d040e5e1e9b29c6e40e98e
by marukawa[VE] Support VE specific data directives in MC
Support VE specific data directives, .word/.long/.llong, in MC layer.
Reviewed By: simoll
Differential Revision: https://reviews.llvm.org/D115120
|
 | llvm/lib/Target/VE/AsmParser/VEAsmParser.cpp (diff) |
 | llvm/test/MC/VE/data.s |
 | llvm/test/MC/VE/data-size-error.s |
Commit
ab31d003e16e483bff298ea2f28fec0f23e8eb79
by gribozavr[clang][docs][dataflow] Added an introduction to dataflow analysis
This documentation supports the dataflow analysis framework (see "[RFC] A dataflow analysis framework for Clang AST" on cfe-dev).
Since the implementation of the framework has not been committed yet, right now the doc describes dataflow analysis in general.
Since this is the first markdown document in clang/docs, I added support for Markdown to clang/docs/conf.py in the same way as it is done in llvm/docs.
Reviewed By: xazax.hun
Differential Revision: https://reviews.llvm.org/D114231
|
 | clang/docs/DataFlowAnalysisIntroImages/CFGExample.svg |
 | clang/docs/index.rst (diff) |
 | clang/docs/DataFlowAnalysisIntro.md |
 | clang/docs/DataFlowAnalysisIntroImages/CFGJoinRule.svg |
 | clang/docs/DataFlowAnalysisIntroImages/IntegerSetsFiniteLattice.svg |
 | clang/docs/DataFlowAnalysisIntroImages/DefinitiveInitializationLattice.svg |
 | clang/docs/DataFlowAnalysisIntroImages/UniquePtrLattice.svg |
 | clang/docs/DataFlowAnalysisIntroImages/IntegerSetsInfiniteLattice.svg |
 | clang/docs/DataFlowAnalysisIntroImages/OutputParameterIdentificationLattice.svg |
 | clang/docs/conf.py (diff) |
Commit
3d549dddf75b6ff9e0ec8c053677750bde4226ea
by sander.desmalen[LV] Pass compare predicate to getCmpSelInstrCost.
If the condition of a select is a compare, pass its predicate to TTI::getCmpSelInstrCost to get a more accurate cost value instead of passing BAD_ICMP_PREDICATE.
I noticed that the commit message from D90070 had a comment about the vectorized select predicate possibly being composed of other compares with different predicate values, but I wasn't able to construct an example where this was an actual issue. If this is an issue, I guess we could add another check that the block isn't predicated for any reason.
Reviewed By: dmgreen, fhahn
Differential Revision: https://reviews.llvm.org/D114646
|
 | llvm/test/Transforms/LoopVectorize/AArch64/select-costs.ll (diff) |
 | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp (diff) |
|
 | compiler-rt/test/tsan/Linux/dlopen_static_tls.cpp (diff) |
Commit
34a43f2115af79f896c889433c57f3b400e9f2c6
by simon.moll[Clang] Ignore CLANG_DEFAULT_LINKER for custom-linker toolchains
Before, the CLANG_DEFAULT_LINKER cmake option was a global override for the linker that shall be used on all toolchains. The linker binary specified that way may not be available on toolchains with custom linkers. Eg, the only linker for VE is named 'nld' - any other linker invalidates the toolchain.
This patch removes the hard override and instead lets the generic toolchain implementation default to CLANG_DEFAULT_LINKER. Toolchains can now deviate with a custom linker name or deliberatly default to CLANG_DEFAULT_LINKER.
Reviewed By: MaskRay, phosek
Differential Revision: https://reviews.llvm.org/D115045
|
 | clang/test/Driver/ve-toolchain.cpp (diff) |
 | clang/lib/Driver/ToolChain.cpp (diff) |
 | clang/test/Driver/ve-toolchain.c (diff) |
 | clang/include/clang/Driver/ToolChain.h (diff) |
Commit
d64b3e47ba6347ef4c68c0666a90eda8f986f525
by zinenko[mlir] Avoid needlessly converting LLVM named structs with compatible elements
Conversion of LLVM named structs leads to them being renamed since we cannot modify the body of the struct type once it is set. Previously, this applied to all named struct types, even if their element types were not affected by the conversion. Make this behvaior only applicable when element types are changed. This requires making the LLVM dialect type-compatibility check recursively look at the element types (arguably, it should have been doing than since the moment the LLVM dialect type system stopped being closed). In addition, have a more lax check for outer types only to avoid repeated check when necessary (e.g., parser, verifiers that are going to also look at the inner type).
Reviewed By: wsmoses
Differential Revision: https://reviews.llvm.org/D115037
|
 | mlir/test/Conversion/StandardToLLVM/convert-types.mlir (diff) |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMTypeSyntax.cpp (diff) |
 | mlir/include/mlir/Dialect/LLVMIR/LLVMTypes.h (diff) |
 | mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp (diff) |
 | mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp (diff) |
|
 | llvm/test/Transforms/DeadStoreElimination/stores-of-existing-values.ll (diff) |
 | llvm/test/Transforms/DeadStoreElimination/libcalls.ll (diff) |
Commit
1a87a1895597226ca655086b7f6972069eca0de1
by jonathanchesterfield[openmp][amdgpu] Disable tests requiring USM on amdgcn
These tests tend to hang or crash on hardware that doesn't support USM. Disabling them helps diagnose other issues. To safely enable we require a means of testing whether USM is expected to work.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D115144
|
 | openmp/libomptarget/test/lit.cfg (diff) |
Commit
fdc1638b5cbd7f93937dce56f8ea29db52390502
by mgorny[lldb] [Process/elf-core] Disable for FreeBSD vmcores
Recognize FreeBSD vmcores (kernel core dumps) through OS ABI = 0xFF + ELF version = 0, and do not process them via the elf-core plugin. While these files use ELF as a container format, they contain raw memory dump rather than proper VM segments and therefore are not usable to the elf-core plugin.
Differential Revision: https://reviews.llvm.org/D114967
|
 | lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp (diff) |
|
 | lldb/unittests/ScriptInterpreter/Lua/LuaTests.cpp (diff) |
 | lldb/bindings/lua/lua.swig (diff) |
 | lldb/source/Plugins/ScriptInterpreter/Lua/Lua.cpp (diff) |
 | lldb/bindings/lua/lua-wrapper.swig (diff) |
|
 | lldb/source/Plugins/ScriptInterpreter/Lua/SWIGLuaBridge.h |
Commit
5c4cb323e86aaf816c0dd45191dad08e5d4691cf
by pavel[lldb/qemu] Add support for pty redirection
Lldb uses a pty to read/write to the standard input and output of the debugged process. For host processes this would be automatically set up by Target::FinalizeFileActions. The Qemu platform is in a unique position of not really being a host platform, but not being remote either. It reports IsHost() = false, but it is sufficiently host-like that we can use the usual pty mechanism.
This patch adds the necessary glue code to enable pty redirection. It includes a small refactor of Target::FinalizeFileActions and ProcessLaunchInfo::SetUpPtyRedirection to reduce the amount of boilerplate that would need to be copied.
I will note that qemu is not able to separate output from the emulated program from the output of the emulator itself, so the two will arrive intertwined. Normally this should not be a problem since qemu should not produce any output during regular operation, but some output can slip through in case of errors. This situation should be pretty obvious (to a human), and it is the best we can do anyway.
For testing purposes, and inspired by lldb-server tests, I have extended the mock emulator with the ability "program" the behavior of the "emulated" program via command-line arguments.
Differential Revision: https://reviews.llvm.org/D114796
|
 | lldb/source/Plugins/Platform/QemuUser/PlatformQemuUser.cpp (diff) |
 | lldb/test/API/qemu/TestQemuLaunch.py (diff) |
 | lldb/source/Host/common/ProcessLaunchInfo.cpp (diff) |
 | lldb/test/API/qemu/qemu.py (diff) |
 | lldb/source/Target/Target.cpp (diff) |
Commit
b23d17f6b5f7748645996f54c79dc0b58aa5a9c2
by Jake.Egan[MC] Add emitXCOFFSymbolLinkageWithVisibility to MCNullStreamer
This patch adds `emitXCOFFSymbolLinkageWithVisibility` to MCNullStreamer to fix llvm_unreachable getting reached when using option `-filetype=null` on AIX.
Reviewed By: DiggerLin
Differential Revision: https://reviews.llvm.org/D114876
|
 | llvm/lib/MC/MCNullStreamer.cpp (diff) |