Commit
8acc3b4ab0c76b9c2a54182e31a02f90ebb96329
by ashaposhnikov[lld][ELF] Support adrp+ldr GOT optimization for AArch64
This diff adds first bits to support relocation relaxations for AArch64 discussed on https://github.com/ARM-software/abi-aa/pull/106. In particular, the case of
adrp x0, :got: symbol ldr x0, [x0, :got_lo12: symbol]
is handled.
Test plan: make check-all
Differential revision: https://reviews.llvm.org/D112063
|
 | lld/test/ELF/aarch64-adrp-ldr-got.s |
 | lld/ELF/Target.h |
 | lld/ELF/Arch/AArch64.cpp |
 | lld/test/ELF/aarch64-adrp-ldr-got-symbols.s |
 | lld/ELF/InputSection.cpp |
Commit
296e8cae5cdaaf292df00453d15fbd5858d6ea0c
by craig.topper[RISCV] Isel (sra (sext_inreg X, i16), C) -> (srai (slli X, (XLen-16), (XLen-16) + C).
Similar for (sra (sext_inreg X, i8), C).
With Zbb, sext_inreg of i8 and i16 are legal for sext.b and sext.h. This transform makes the Zbb codegen the same as without Zbb. The shifts are more compressible. This also exposes an opportunity for CSE with another slli in the i16 sdiv by constant codegen.
|
 | llvm/test/CodeGen/RISCV/rv32zbb-zbp.ll |
 | llvm/test/CodeGen/RISCV/rv64zbb-zbp.ll |
 | llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp |
 | llvm/test/CodeGen/RISCV/div-by-constant.ll |
Commit
268a42d6976d571da2edcefea36f1d77e252d5bc
by davelee.com[lldb] Require x86 support for dwo-relative-path test
|
 | lldb/test/Shell/SymbolFile/DWARF/dwo-relative-path.s |
Commit
aad27a890754fe13bd57a99a838307fee81496ee
by davelee.com[lldb] Check for arm64 in TestDisassembleRawData
This test checks for `aarch64` but the lit config could also contain `arm64`. This change adds `arm64` to make the test pass in all cases.
Differential Revision: https://reviews.llvm.org/D116912
|
 | lldb/test/API/python_api/disassemble-raw-data/TestDisassembleRawData.py |
Commit
4a8549354c1b77ce830e488ceefa05dfb4bc9325
by davelee.com[lldb] Guard libstdc++ specific 'frame var' test
While working on D116788 (properly error out of `frame var`), this libstdc++ specific `frame var` invocation was found in the tests. This test is in the generic directory, but has this one case that requires libstdc++. The fix here is to put the one `expect()` inside of a condition that checks for libstdc++.
Differential Revision: https://reviews.llvm.org/D116901
|
 | lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/list/TestDataFormatterGenericList.py |
Commit
d51402ac6b802dbc17402135067d302853b34252
by Jonas Devlieghere[lldb] Remove reproducer instrumentation
This patch removes most of the reproducer instrumentation. It keeps around the LLDB_RECORD_* macros for logging. See [1] for more details.
[1] https://lists.llvm.org/pipermail/lldb-dev/2021-September/017045.html
Differential revision: https://reviews.llvm.org/D116847
|
 | lldb/source/API/SBDebugger.cpp |
 | lldb/source/API/SBMemoryRegionInfoList.cpp |
 | lldb/source/API/SBStream.cpp |
 | lldb/source/API/SBTypeFilter.cpp |
 | lldb/source/API/SBBroadcaster.cpp |
 | lldb/source/API/SBWatchpoint.cpp |
 | lldb/source/API/SBLineEntry.cpp |
 | lldb/source/API/SBValueList.cpp |
 | lldb/source/API/SBEvent.cpp |
 | lldb/source/API/SBBreakpointLocation.cpp |
 | lldb/source/API/SBTypeSynthetic.cpp |
 | lldb/source/API/SBFrame.cpp |
 | lldb/source/API/SBQueueItem.cpp |
 | lldb/source/API/SBListener.cpp |
 | lldb/source/API/SBQueue.cpp |
 | lldb/source/API/SBUnixSignals.cpp |
 | lldb/source/API/SBValue.cpp |
 | lldb/source/API/SBModule.cpp |
 | lldb/source/API/SBStructuredData.cpp |
 | lldb/source/API/SBCommandInterpreterRunOptions.cpp |
 | lldb/source/API/SBModuleSpec.cpp |
 | lldb/source/API/SBTypeNameSpecifier.cpp |
 | lldb/source/API/SBInstructionList.cpp |
 | lldb/source/API/SBReproducer.cpp |
 | lldb/source/API/SBData.cpp |
 | lldb/source/API/SBCommandReturnObject.cpp |
 | lldb/source/API/SBExecutionContext.cpp |
 | lldb/source/API/SBProcess.cpp |
 | lldb/source/API/SBCommunication.cpp |
 | lldb/source/API/SBAttachInfo.cpp |
 | lldb/source/Utility/ReproducerInstrumentation.cpp |
 | lldb/source/API/SBThreadPlan.cpp |
 | lldb/source/API/SBSymbolContextList.cpp |
 | lldb/source/API/SBExpressionOptions.cpp |
 | lldb/source/API/SBFileSpecList.cpp |
 | lldb/source/API/SBFile.cpp |
 | lldb/source/API/SBHostOS.cpp |
 | lldb/source/API/SBFileSpec.cpp |
 | lldb/source/API/SBLaunchInfo.cpp |
 | lldb/source/API/SBVariablesOptions.cpp |
 | lldb/source/API/SBAddress.cpp |
 | lldb/unittests/Utility/ReproducerInstrumentationTest.cpp |
 | lldb/include/lldb/Utility/ReproducerInstrumentation.h |
 | lldb/source/API/SBThread.cpp |
 | lldb/source/API/SBCompileUnit.cpp |
 | lldb/source/API/SBType.cpp |
 | lldb/source/API/SBTypeEnumMember.cpp |
 | lldb/source/API/SBSymbol.cpp |
 | lldb/source/API/SBTypeSummary.cpp |
 | lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp |
 | lldb/unittests/Utility/CMakeLists.txt |
 | lldb/source/API/SBEnvironment.cpp |
 | lldb/source/API/SBMemoryRegionInfo.cpp |
 | lldb/source/API/SBTrace.cpp |
 | lldb/source/API/SBTypeCategory.cpp |
 | lldb/source/API/SBDeclaration.cpp |
 | lldb/source/API/SBInstruction.cpp |
 | lldb/source/API/SBReproducerPrivate.h |
 | lldb/source/API/SBCommandInterpreter.cpp |
 | lldb/source/API/SBBlock.cpp |
 | lldb/source/API/SBStringList.cpp |
 | lldb/source/API/SBBreakpointName.cpp |
 | lldb/source/API/SBLanguageRuntime.cpp |
 | lldb/source/API/SBFunction.cpp |
 | lldb/source/API/SBSourceManager.cpp |
 | lldb/source/API/SBSymbolContext.cpp |
 | lldb/source/API/SBThreadCollection.cpp |
 | lldb/source/API/SBSection.cpp |
 | lldb/source/API/SBPlatform.cpp |
 | lldb/source/API/SBBreakpoint.cpp |
 | lldb/source/API/SBTarget.cpp |
 | lldb/source/API/SBProcessInfo.cpp |
 | lldb/source/API/SBError.cpp |
 | lldb/source/API/SBTypeFormat.cpp |
Commit
ed3a4a4948dedd264732105e910405138c9c0f3b
by davelee.com[lldb] Skip TestVSCode_coreFile if no x86 target support
|
 | lldb/test/API/tools/lldb-vscode/coreFile/TestVSCode_coreFile.py |
Commit
cd4deef28e4361af19cd5a208ef51a5f0b26ee61
by sivachandra[libc] Re-enable thrd_test.
Other threads related tests have been using the API that is tested here without any problems. The main reason for disabling the test has also been fixed many months ago.
|
 | libc/test/src/threads/CMakeLists.txt |
Commit
8ddc81692952c3743939c23f66b3b58db0d4edca
by zixuan.wu[CSKY] Lower leaf DAG node such as global symbol, frame address and jumptable, etc.
Lower global symbols such as call/external symbol. Lower other leaf DAG node such as frame address/block address/jumptable/vastart.
Normally some leaf symbols need reside in constant pool as ABI prefers, and are addressed by lrw or jsri instructions.
Every symbol in constant pool is lowered with one entry in target constant pool. The entry has different type corresponding to different leaf node such as blockaddress, jumptable, or global value.
|
 | llvm/test/CodeGen/CSKY/call.ll |
 | llvm/lib/Target/CSKY/CMakeLists.txt |
 | llvm/lib/Target/CSKY/CSKYConstantPoolValue.cpp |
 | llvm/test/CodeGen/CSKY/frameaddr-returnaddr.ll |
 | llvm/lib/Target/CSKY/CSKYISelLowering.h |
 | llvm/lib/Target/CSKY/CSKYAsmPrinter.cpp |
 | llvm/lib/Target/CSKY/CSKYInstrInfo.h |
 | llvm/lib/Target/CSKY/CSKYInstrInfo.td |
 | llvm/test/CodeGen/CSKY/switch.ll |
 | llvm/lib/Target/CSKY/CSKYISelDAGToDAG.cpp |
 | llvm/lib/Target/CSKY/CSKYInstrInfo.cpp |
 | llvm/lib/Target/CSKY/CSKYAsmPrinter.h |
 | llvm/lib/Target/CSKY/CSKYISelLowering.cpp |
 | llvm/lib/Target/CSKY/CSKYConstantPoolValue.h |
 | llvm/test/CodeGen/CSKY/indirectbr.ll |
Commit
c4cdf865698eae06affbf762baf38e6ca95b4785
by davelee.com[lldb] Skip TestTargetXMLArch if no support for x86 target
If LLVM is configured without X86 as one of its TARGETS_TO_BUILD, then lldb will crash when using X86 disassembler (which it does while running `image show-unwind`).
|
 | lldb/test/API/functionalities/gdb_remote_client/TestTargetXMLArch.py |
Commit
d232abc33b707d2da8ca4e4c84d8287ce0e1a47a
by Jonas Devlieghere[lldb] Remove LLDB_RECORD_RESULT macro
|
 | lldb/source/API/SBUnixSignals.cpp |
 | lldb/source/API/SBTypeFilter.cpp |
 | lldb/source/API/SBThreadCollection.cpp |
 | lldb/source/API/SBThread.cpp |
 | lldb/source/API/SBHostOS.cpp |
 | lldb/source/API/SBBreakpointName.cpp |
 | lldb/source/API/SBError.cpp |
 | lldb/source/API/SBDeclaration.cpp |
 | lldb/source/API/SBProcessInfo.cpp |
 | lldb/source/API/SBValueList.cpp |
 | lldb/include/lldb/Utility/ReproducerInstrumentation.h |
 | lldb/source/API/SBListener.cpp |
 | lldb/source/API/SBFunction.cpp |
 | lldb/source/API/SBInstructionList.cpp |
 | lldb/source/API/SBDebugger.cpp |
 | lldb/source/API/SBSourceManager.cpp |
 | lldb/source/API/SBTrace.cpp |
 | lldb/source/API/SBMemoryRegionInfoList.cpp |
 | lldb/source/API/SBTypeFormat.cpp |
 | lldb/source/API/SBCompileUnit.cpp |
 | lldb/source/API/SBCommandReturnObject.cpp |
 | lldb/source/API/SBCommandInterpreter.cpp |
 | lldb/source/API/SBModuleSpec.cpp |
 | lldb/source/API/SBExpressionOptions.cpp |
 | lldb/source/API/SBStringList.cpp |
 | lldb/source/API/SBInstruction.cpp |
 | lldb/source/API/SBCommandInterpreterRunOptions.cpp |
 | lldb/source/API/SBVariablesOptions.cpp |
 | lldb/source/API/SBBlock.cpp |
 | lldb/source/API/SBFileSpec.cpp |
 | lldb/source/API/SBPlatform.cpp |
 | lldb/source/API/SBTarget.cpp |
 | lldb/source/API/SBTypeSynthetic.cpp |
 | lldb/source/API/SBSymbolContext.cpp |
 | lldb/source/API/SBTypeSummary.cpp |
 | lldb/source/API/SBLineEntry.cpp |
 | lldb/source/API/SBStructuredData.cpp |
 | lldb/source/API/SBModule.cpp |
 | lldb/source/API/SBMemoryRegionInfo.cpp |
 | lldb/source/API/SBSection.cpp |
 | lldb/source/API/SBTypeEnumMember.cpp |
 | lldb/source/API/SBFile.cpp |
 | lldb/source/API/SBData.cpp |
 | lldb/source/API/SBFileSpecList.cpp |
 | lldb/source/API/SBAttachInfo.cpp |
 | lldb/source/API/SBEnvironment.cpp |
 | lldb/source/API/SBSymbol.cpp |
 | lldb/source/API/SBBreakpointLocation.cpp |
 | lldb/source/API/SBSymbolContextList.cpp |
 | lldb/source/API/SBBreakpoint.cpp |
 | lldb/source/API/SBThreadPlan.cpp |
 | lldb/source/API/SBLaunchInfo.cpp |
 | lldb/source/API/SBAddress.cpp |
 | lldb/source/API/SBProcess.cpp |
 | lldb/source/API/SBCommunication.cpp |
 | lldb/source/API/SBQueueItem.cpp |
 | lldb/source/API/SBQueue.cpp |
 | lldb/source/API/SBTypeCategory.cpp |
 | lldb/source/API/SBType.cpp |
 | lldb/source/API/SBValue.cpp |
 | lldb/source/API/SBWatchpoint.cpp |
 | lldb/source/API/SBBroadcaster.cpp |
 | lldb/source/API/SBFrame.cpp |
 | lldb/source/API/SBEvent.cpp |
 | lldb/source/API/SBTypeNameSpecifier.cpp |
 | lldb/source/API/SBExecutionContext.cpp |
Commit
34a91d7748d47367ed520cb96313aae31026b01a
by kosov.pavel[SchedModels][CortexA55] Fix scheduling of FP loads
Patch fixes scheduling of FP load instructions with pre/post increment adding WriteAdr for address operand.
Reviewed By: dmgreen
Differential Revision: https://reviews.llvm.org/D116361
OS Laboratory. Huawei Russian Research Institute. Saint-Petersburg
|
 | llvm/test/tools/llvm-mca/AArch64/Cortex/A55-basic-instructions.s |
 | llvm/lib/Target/AArch64/AArch64SchedA55.td |
 | llvm/test/tools/llvm-mca/AArch64/Cortex/A55-load-readadv.s |
Commit
3523876873b25bbb8225fed45e4db79e7d250a4f
by stephen.neuendorfferFix exported MLIR_TABLEGEN_EXE
LLVM_OPTIMIZED_TABLEGEN results in MLIR_TABLEGEN_EXE pointing to an absolute path in the build directory. This doesn't work when exporting to an install directory. This patch fixes the exported information for an install directory to refer to the installed mlir-tblgen. (Note that this is probably a debug version if LLVM_OPTIMIZED_TABLEGEN is set)
|
 | mlir/cmake/modules/MLIRConfig.cmake.in |
 | mlir/cmake/modules/CMakeLists.txt |
Commit
b645bcd98a11c7857cdee51202c64d15b9a4f90d
by craig.topper[RISCV] Generalize (srl (and X, 0xffff), C) -> (srli (slli X, (XLen-16), (XLen-16) + C) optimization.
This can be generalized to (srl (and X, C2), C) -> (srli (slli X, (XLen-C3), (XLen-C3) + C). Where C2 is a mask with C3 trailing ones.
This can avoid constant materialization for C2. This is beneficial even when C2 can be selected to ANDI because the SLLI can become C.SLLI, but C.ANDI cannot cover all the immediates of ANDI.
This also enables CSE in some cases of i8 sdiv by constant codegen.
|
 | llvm/test/CodeGen/RISCV/alu8.ll |
 | llvm/test/CodeGen/RISCV/rv64zbb.ll |
 | llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp |
 | llvm/test/CodeGen/RISCV/rv64zbb-zbp.ll |
 | llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll |
 | llvm/test/CodeGen/RISCV/div-by-constant.ll |
 | llvm/test/CodeGen/RISCV/rv32zbb-zbp.ll |
 | llvm/test/CodeGen/RISCV/div.ll |
 | llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll |
 | llvm/test/CodeGen/RISCV/bswap-ctlz-cttz-ctpop.ll |