Commit
175c1a39e8f924f9199d4c8c94f06ad0d3502235
by Lang Hames[ORC][llvm-jitlink] Add debugging output to SimpleRemoteEPC (and Server).
Also adds an optional 'debug' argument to the llvm-jitlink-executor tool to enable debug-logging.
|
 | llvm/lib/ExecutionEngine/Orc/SimpleRemoteEPC.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/SimpleRemoteEPC.h |
 | llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.h |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleRemoteEPCServer.cpp |
 | llvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp |
Commit
3fe97672047bcdedbd5d34a26498b10f9dba369d
by llvm-dev[X86] Fold ADD(VPMADDWD(X,Y),VPMADDWD(Z,W)) -> VPMADDWD(SHUFFLE(X,Z), SHUFFLE(Y,W))
Merge addition of VPMADDWD nodes if each element pair doesn't use the upper element in each pair (i.e. its zero) - we can generalize this to either element in the pair if we one day create VPMADDWD with zero lower elements.
There are still a number of issues with extending/shuffling with 256/512-bit VPMADDWD nodes so this initially only works for v2i32/v4i32 cases - I'm working on removing all these limitations but there's still a bit of yak shaving to go.....
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/madd.ll |
 | llvm/test/CodeGen/X86/pmaddubsw.ll |
Commit
6498b0e991babe71e69ab02e1afa7f5535f2be0f
by Lang HamesReintroduce "[ORC] Introduce EPCGenericRTDyldMemoryManager."
This reintroduces "[ORC] Introduce EPCGenericRTDyldMemoryManager." (bef55a2b47a938ef35cbd7b61a1e5fa74e68c9ed) and "[lli] Add ChildTarget dependence on OrcTargetProcess library." (7a219d801bf2c3006482cf3cbd3170b3b4ea2e1b) which were reverted in 99951a56842d8e4cd0706cd17a04f77b5d0f6dd0 due to bot failures.
The root cause of the bot failures should be fixed by "[ORC] Fix uninitialized variable." (0371049277912afc201da721fa659ecef7ab7fba) and "[ORC] Wait for handleDisconnect to complete in SimpleRemoteEPC::disconnect." (320832cc9b7e7fea5fc8afbed75c34c4a43287ba).
|
 | llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp |
 | llvm/lib/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.cpp |
 | llvm/tools/lli/ChildTarget/CMakeLists.txt |
 | llvm/tools/lli/ForwardingMemoryManager.h |
 | llvm/tools/lli/lli.cpp |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/SimpleExecutorMemoryManager.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h |
 | llvm/lib/ExecutionEngine/Orc/CMakeLists.txt |
 | llvm/tools/lli/RemoteJITUtils.h |
 | llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/RegisterEHFrames.h |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/RegisterEHFrames.cpp |
 | llvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp |
 | llvm/tools/lli/ChildTarget/ChildTarget.cpp |
 | llvm/include/llvm/ExecutionEngine/Orc/EPCGenericRTDyldMemoryManager.h |
Commit
a44b122adead759e6af4d73ccf4cc2b3c813c400
by llvmgnsyncbot[gn build] Port 6498b0e991ba
|
 | llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn |
Commit
a12c0d5ea66a1059333b9b8ea364e9301c1413c5
by Lang Hames[ORC] Export process symbols in lli-child-target.
We want this behavior for future testing infrastructure anyway, and it may help with the failure in https://lab.llvm.org/buildbot/#/builders/98/builds/6401:
/b/fuchsia-x86_64-linux/llvm.obj/tools/clang/stage2-bins/bin/lli: warning: remote mcjit does not support lazy compilation Finalization error: could not register eh-frame: __register_frame function not found /b/fuchsia-x86_64-linux/llvm.obj/tools/clang/stage2-bins/bin/lli: disconnecting
|
 | llvm/tools/lli/ChildTarget/CMakeLists.txt |
Commit
f40685138ba182fc823f569f6d88b7d3ddf34b9e
by Lang Hames[ORC] Remote OrcRemoteTargetClient and OrcRemoteTargetServer.
Now that the lli and lli-child-target tools have been updated to use SimpleRemoteEPC (6498b0e991b) the OrcRemoteTarget* APIs are no longer needed.
Once the LLJITWithRemoteDebugging example has been migrated to SimpleRemoteEPC we will remove OrcRPCExecutorProcessControl, and the ORC RPC system itself.
|
 | llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetServer.h |
 | llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetRPCAPI.h |
 | llvm/include/llvm/ExecutionEngine/Orc/OrcRemoteTargetClient.h |
Commit
ed3e4917b36f2530703115066700daeb2b45b4f0
by llvm-dev[X86] Fold PACK(*_EXTEND_VECTOR_INREG, UNDEF) -> *_EXTEND_VECTOR_INREG
For 128-bit vectors, we can remove a PACK of a EXTEND_VECTOR_INREG node and just create a smaller extension to the result/packed type.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/pmaddubsw.ll |
Commit
c0eff50fc5a48990ad9ebfcb7e81c6ab6fea79c5
by llvm-dev[X86][SSE] combineMulToPMADDWD - enable sext_extend_vector_inreg(vXi16) -> zext_extend_vector_inreg(vXi16) fold
The plan is to allow combineMulToPMADDWD to match illegal vector types (as long as they're still pow2), which should allow us to start removing the 128-bit limit on more of the PMADDWD combines.
|
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/madd.ll |
Commit
7a855596c3a29ba7a9b0cc9bcc820f7f78d07afe
by nikita.ppv[BasicAA] Don't check whether GEP is sized (NFC)
GEPs are required to have sized source element type, so we can just assert that here.
|
 | llvm/lib/Analysis/BasicAliasAnalysis.cpp |
Commit
e2f780fba96c55b0dcb7aa3c4719110875b36dfb
by mgorny[lldb] [gdb-remote] Use llvm::StringRef.split() and llvm::to_integer()
Replace the uses of StringConvert combined with hand-rolled array splitting with llvm::StringRef.split() and llvm::to_integer().
Differential Revision: https://reviews.llvm.org/D110472
|
 | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h |
 | lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp |
 | lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp |