- Apr 03, 2020
-
-
Xiang1 Zhang authored
Summary: This patch comes from H.J.'s https://github.com/hjl-tools/llvm-project/commit/2bd54ce7fa9e94fcd1118b948e14d1b6fc54dfd2 **This patch fix the failed llvm unit tests which running on CET machine. **(e.g. ExecutionEngine/MCJIT/MCJITTests) The reason we enable IBT at "JIT compiled with CET" is mainly that: the JIT don't know the its caller program is CET enable or not. If JIT's caller program is non-CET, it is no problem JIT generate CET code or not. But if JIT's caller program is CET enabled, JIT must generate CET code or it will cause Control protection exceptions. I have test the patch at llvm-unit-test and llvm-test-suite at CET machine. It passed. and H.J. also test it at building and running VNCserver(Virtual Network Console), it works too. (if not apply this patch, VNCserver will crash at CET machine.) Reviewers: hjl.tools, craig.topper, LuoYuanke, annita.zhang, pengfei Subscribers: tstellar, efriedma, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D76900
-
Craig Topper authored
Thankfully no issues found.
-
Jessica Paquette authored
This was causing a machine verifier failure on the test suite. Make sure that we don't end up with a weird register class here. Failure for reference: *** Bad machine code: Illegal virtual register for instruction *** - function: check_constrain - basic block: %bb.1 (0x7f8b70839f80) - instruction: early-clobber %6:gpr64, early-clobber %7:gpr64sp = JumpTableDest32 %5:gpr64, %1:gpr64sp, %jump-table.0 - operand 3: %1:gpr64sp Expected a GPR64 register, but got a GPR64sp register Differential Revision: https://reviews.llvm.org/D77349
-
Wenju He authored
Summary: Align with AVX512 builtins implementations, some of which don't preserve rdi. Reviewers: yubing, tianqing, craig.topper Reviewed By: craig.topper Subscribers: yaxunl, Anastasia, hiraditya Differential Revision: https://reviews.llvm.org/D77032
-
Qiu Chaofan authored
MI peephole will remove unnecessary FRSP instructions. This patch removes such unnecessary XSRSP. Reviewed By: steven.zhang Differential Revision: https://reviews.llvm.org/D77208
-
Nico Weber authored
-
Brian Gesiak authored
Summary: In the case of a coroutine that takes no arguments, `Sema::buildCoroutinePromise` constructs a list-initialization (`clang::InitializationKind::InitKind::IK_DirectList`) of the promise variable, using a list of empty arguments. So, if one were to dump the promise `VarDecl` immediately after `Sema::ActOnCoroutineBodyStart` calls `checkCoroutineContext`, for a coroutine function that takes no arguments, they'd see the following: ``` VarDecl 0xb514490 <test.cpp:26:3> col:3 __promise '<dependent type>' callinit `-ParenListExpr 0xb514510 <col:3> 'NULL TYPE' ``` But after this patch, the `ParenListExpr` is no longer constructed, and the promise variable uses default initialization (`clang::InitializationKind::InitKind::IK_Default`): ``` VarDecl 0x63100012dae0 <test.cpp:26:3> col:3 __promise '<dependent type>' ``` As far as I know, there's no case in which list-initialization with no arguments differs from default initialization, but if I'm wrong please let me know (and I'll add a test case that demonstrates the change -- but as-is I can't think of a functional test case for this). I think both comply with the wording of C++20 `[dcl.fct.def.coroutine]p5`: > _promise-constructor-arguments_ is determined as follows: overload resolution is performed on a promise constructor call created by assembling an argument list with lvalues `p1 ... pn`. If a viable constructor is found (12.4.2), then _promise-constructor-arguments_ is `(p1, ... , pn)`, otherwise _promise-constructor-arguments_ is empty. Still, I think this patch is an improvement regardless, because it reduces the size of the AST. Reviewers: GorNishanov, rsmith, lewissbaker Subscribers: EricWF, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D70555
-
Alex Grosul authored
Two back-to-back transpose operations are combined into a single transpose, which uses a combination of their permutation vectors. Differential Revision: https://reviews.llvm.org/D77331
-
Greg Clayton authored
Summary: The IDE has no packets that are sent to lldb-vscode that say which thread and frame are selected. The only way we know is we get a request for variables for a stack frame via a "scopes" request. When we receive this packet we make that thread and frame the selected thread and frame in lldb. This way when people execute lldb commands in the debug console by prefixing the expression with the backtick character, we will have the right thread and frame selected. Previously this was not updated as new stack frames were selected. Reviewers: labath, aadsm, wallace, JDevlieghere Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D77347
-
Nico Weber authored
-
Jun Ma authored
Differential Revision: https://reviews.llvm.org/D77035
-
Nicolas Vasilache authored
A certain number of EDSCs have a named form (e.g. `linalg.matmul`) and a generic form (e.g. `linalg.generic` with matmul traits). Despite living in different namespaces, using the same name is confusiong in clients. Rename them as `linalg_matmul` and `linalg_generic_matmul` respectively.
-
Austin Kerbow authored
Summary: This fixes a few issues related to SMRD offsets. On gfx9 and gfx10 we have a signed byte offset immediate, however we can overflow into a negative since we treat it as unsigned. Also, the SMRD SOFFSET sgpr is an unsigned offset on all subtargets. We sometimes tried to use negative values here. Third, S_BUFFER instructions should never use a signed offset immediate. Differential Revision: https://reviews.llvm.org/D77082
-
Adrian Prantl authored
Debug info for labels is not generated at -gline-tables-only, so this pass should remove them. Differential Revision: https://reviews.llvm.org/D77345
-
Adrian Prantl authored
This patch also strips llvm.dbg.addr intrinsics when downgrading debug info to linetables-only. Differential Revision: https://reviews.llvm.org/D77343
-
Nico Weber authored
-
Nico Weber authored
Things pass locally, but some tests on some bots are still unhappy. I'm not sure why. See if using forward slashes as before helps.
-
Lang Hames authored
Forgot to include part of the testcase. Thank to Nico for spotting that and reverting!
-
Matt Arsenault authored
-
Hubert Tong authored
Summary: This patch addresses, for the interfaces implemented by `COFFDump.cpp`, multiple issues identified with the current structure of `llvm-objdump.h` in the review of D72973. This patch moves implementation details of the tool into an `llvm::objdump` namespace for external linkage names, splits the implementation details into separate headers for each implementation file, and uses qualified names when declaring members of the `llvm::objdump` namespace in place of leaving the namespace definition open. Reviewers: jhenderson, DiggerLin, jasonliu, daltenty, MaskRay Reviewed By: jhenderson, MaskRay Subscribers: MaskRay, rupprecht, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77285
-
- Apr 02, 2020
-
-
Julian Lettner authored
rdar://59643443
-
Julian Lettner authored
Picking a default filter `.*` that matches everything lets us streamline some error handling code.
-
Julian Lettner authored
On shutdown, the result complete handler is not racing with the main thread anymore because we are now always waiting for process pool termination via ``` finally: pool.join() ```
-
Matt Arsenault authored
-
Matt Arsenault authored
-
Matt Arsenault authored
Switch to using the denormal-fp-math/denormal-fp-math-f32 attributes.
-
Matt Arsenault authored
-
Matt Arsenault authored
This will likely introduce catastrophic performance regressions on older subtargets, but should be correct. A follow up change will remove the old fp32-denormals subtarget features, and switch to using the new denormal-fp-math/denormal-fp-math-f32 attributes. Frontends should be making sure to add the denormal-fp-math-f32 attribute when appropriate to avoid performance regressions.
-
Duncan P. N. Exon Smith authored
Diagnostics from modules do not have a `main-file` listed. Tweak `clang-parse-diagnostics-file` to patch this up. Previously, the call to `os.path.basename` would crash. Radar-Id: rdar://problem/59000292
-
Louis Dionne authored
-
Louis Dionne authored
Instead of hardcoding absolute paths on the build-host in the executables, use relative paths from the current working directory. Also, use FILE_DEPENDENCIES to mark the static test env as being required by the relevant tests. Given a SSH executor that copies the files to the remote host properly, the tests can be run on that remote host.
-
Nico Weber authored
The problem on Windows was that the \b in "..\bin" was interpreted as an escape sequence. Use r"" strings to prevent that. This reverts commit ab11b9ee, with raw strings in the lit.site.cfg.py.in files. Differential Revision: https://reviews.llvm.org/D77184
-
Cyndy Ishida authored
Summary: [llvm][TextAPI] adding inlining reexported libraries support * this patch adds reader/writer support for MachO tbd files. The usecase is to represent reexported libraries in top level library that won't need to exist for linker indirection because all of the needed content will be inlined in the same document. Reviewers: ributzka, steven_wu, jhenderson Reviewed By: ributzka Subscribers: JDevlieghere, hiraditya, mgrang, dexonsmith, rupprecht, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D67646
-
Casey Carter authored
... keep the warning suppression, but revert the `__pragma` to `_Pragma` change because `_Pragma` interacts badly with `/Zc:preprocessor`.
-
Craig Topper authored
The compares are going to be type legalized to 256 bits so we might as well fold the extend.
-
Fangrui Song authored
With a fix for http://lab.llvm.org:8011/builders/clang-cmake-armv8-lld/builds/3636 Also trims some unneeded dependencies.
-
Nico Weber authored
This reverts commit fb80b6b2 and follow-up 631ee8b2. Seems to not work on Windows: http://lab.llvm.org:8011/builders/llvm-clang-lld-x86_64-scei-ps4-windows10pro-fast/builds/31684 http://lab.llvm.org:8011/builders/llvm-clang-win-x-aarch64/builds/6512 Let's revert while I investigate.
-
Mehdi Amini authored
This slightly tweaks the generated code from: #ifdef GEN_PASS_REGISTRATION ::mlir::registerPass("flag1", ... ::mlir::registerPass("flag2", ... #endif // GEN_PASS_REGISTRATION to: #ifdef GEN_PASS_REGISTRATION #define GEN_PASS_REGISTRATION_Pass1 #define GEN_PASS_REGISTRATION_Pass2 #endif // GEN_PASS_REGISTRATION #ifdef GEN_PASS_REGISTRATION_Pass1 ::mlir::registerPass("flag1", ... #endif #ifdef GEN_PASS_REGISTRATION_Pass1 ::mlir::registerPass("flag2", ... #endif That way the generated code can be included by defining the `GEN_PASS_REGISTRATION` macro as currenty and register all the passes, but one can also define only `GEN_PASS_REGISTRATION_Pass1` to register a subset of the passes. Differential Revision: https://reviews.llvm.org/D77322
-
Walter Erquinigo authored
* This is a reattempted commit due to a previous builtbot failure - Now using a env var to determine whether to run the test, as someone might have built liblldbIntelFeatures.so without intelPT support, which would make this test fail. Summary: Depends on D76872. There was no test for the Intel PT support on LLDB, so I'm creating one, which will help making progress on solid grounds. The test is skipped if the Intel PT plugin library is not built. Reviewers: clayborg, labath, kusmour, aadsm Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D77107
-
Nico Weber authored
I broke it with last-minute changes right before committing. Differential Revision: https://reviews.llvm.org/D77184
-