- Aug 18, 2020
-
-
Sanjay Patel authored
The "isa" checks were less constrained because they allow target constants, but the later matching code would bail out on those anyway, so this should be slightly more efficient.
-
Tyker authored
this bug was causing miscompile. now clang cant properly selfhost with -mllvm --enable-knowledge-retention Reviewed By: jdoerfert, lebedev.ri Differential Revision: https://reviews.llvm.org/D83507
-
Matt Arsenault authored
The previous implementation was incorrect, and based off incorrect instruction definitions. Unfortunately we can't match natural addressing in a lot of cases due to the shift/scale applied in getelementptrs. This relies on reducing the 64-bit shift to 32-bits.
-
Matt Arsenault authored
-
Stanislav Mekhanoshin authored
Since we have defined all these sizes I believe we shall be able to spill these as well. Differential Revision: https://reviews.llvm.org/D86098
-
Jonas Devlieghere authored
The test checks the inferior's output. During replay the binary doesn't actually run and the output isn't captured by the reproducers.
-
Dávid Bolvanský authored
This reverts commit 50c743fa. Patch will be split to smaller ones.
-
Jonas Devlieghere authored
-
Jonas Devlieghere authored
-
Fangrui Song authored
[ELF] Allow mixed SHF_LINK_ORDER & non-SHF_LINK_ORDER sections and sort within InputSectionDescription LLD currently does not allow non-contiguous SHF_LINK_ORDER components in an output section. This makes it infeasible to add SHF_LINK_ORDER to an existing metadata section if backward compatibility with older object files are concerned. We did not allow mixed components (like GNU ld) and D77007 relaxed to allow non-contiguous SHF_LINK_ORDER components. This patch allows arbitrary mix, with sorting performed within an InputSectionDescription. For example, `.rodata : {*(.rodata.foo) *(.rodata.bar)}`, has two InputSectionDescription's. If there is at least one SHF_LINK_ORDER and at least one non-SHF_LINK_ORDER in .rodata.foo, they are ordered within `*(.rodata.foo)`: we arbitrarily place SHF_LINK_ORDER components before non-SHF_LINK_ORDER components (like Solaris ld). `*(.rodata.bar)` is ordered similarly, but the two InputSectionDescription's don't interact. It can be argued that this is more reasonable than the previous behavior where written order was not respected. It would be nice if the two different semantics (ordering requirement & garbage collection) were not overloaded on one section flag, however, it is probably difficult to obtain a generic flag at this point (https://groups.google.com/forum/#!topic/generic-abi/hgx_m1aXqUo "SHF_LINK_ORDER's original semantics make upgrade difficult"). (Actually, without the GC semantics, SHF_LINK_ORDER would still have the sh_link!=0 & sh_link=0 issue. It is just that people find the GC semantics more useful and tend to use the feature more often.) GNU ld feature request: https://sourceware.org/bugzilla/show_bug.cgi?id=16833 Differential Revision: https://reviews.llvm.org/D84001 -
Matt Morehouse authored
While the instrumentation never calls dfsan_union in fast16labels mode, the custom wrappers do. We detect fast16labels mode by checking whether any labels have been created. If not, we must be using fast16labels mode. Reviewed By: vitalybuka Differential Revision: https://reviews.llvm.org/D86012
-
Valentin Clement authored
Use the TableGen directive back-end to generate code for the clauses unparsing. Reviewed By: sscalpone, kiranchandramohan Differential Revision: https://reviews.llvm.org/D85851
-
Jonas Devlieghere authored
... if the collected file doesn't exists. This fixes the situation where LLDB can't create a file when capturing a reproducer because the parent path doesn't exist, but can during replay because the file collector created the directory hierarchy even though the file doesn't exist. This is covered by the lldb reproducer test suite.
-
Matt Arsenault authored
-
Matt Arsenault authored
The artifact combiner searches for the uses of G_MERGE_VALUES for unmerge/trunc that need further combining. This also needs to handle the vector merge opcodes the same way. This fixes leaving behind some pairs I expected to be removed, that were if the legalizer is run a second time.
-
Michael Park authored
The tests for it were missing so I've added them. Reviewed By: #libc, EricWF Differential Revision: https://reviews.llvm.org/D86006
-
Florian Hahn authored
isWriteAtEndOfFunction needs to check all memory uses of Def, which is much more expensive than getting the underlying objects in practice. Switch the call order, as recommended by the TODO, which was added as per an earlier review. This shaves off a bit of compile-time.
-
Matt Arsenault authored
-
Jonas Devlieghere authored
This tests the driver, which is bypassed by the reproducer during replay.
-
Jonas Devlieghere authored
Add the missing LLDB_REGISTER_STATIC_METHOD macro and format the file.
-
Arthur Eubanks authored
Pin the test to use -enable-npm-optnone. Before, optnone wasn't implemented under NPM, so the LPM and NPM runs produced different IR. Now with -enable-npm-optnone, that is no longer necessary. Reviewed By: ychen Differential Revision: https://reviews.llvm.org/D86008
-
Arthur Eubanks authored
This fails due to the clang invocation running at -O0, producing an optnone function. Then even with -O2 in the later invocations, LoopVectorizePass doesn't run on the optnone function. So split this into an -O0 run and an -O2 run. Reviewed By: asbirlea Differential Revision: https://reviews.llvm.org/D86011
-
Jonas Devlieghere authored
Rename the existing expectedFailure to expectedFailureIfFn to better describe its purpose and provide an overload for unittest2.expectedFailure in decorators.py.
-
Raphael Isemann authored
-
Fangrui Song authored
Since -[no-]toc-optimize has not ever been used, we can enforce the two-dash form as well.
-
Florian Hahn authored
Currently the code does not account for the fact that getDomMemoryDef can be called with ScanLimit == 0, if we reached the limit while processing an earlier access. Also tighten the check a bit more and bump the scan limit now that it is handled properly. In some cases, this brings a 2x speedup in terms of compile-time.
-
Stella Laurenzo authored
* Also raises an exception on parse error. * Removes placeholder smoketest. * Adds docstrings. Differential Revision: https://reviews.llvm.org/D86046
-
Aditya Kumar authored
Reviewed By: fhahn Differential Revision: https://reviews.llvm.org/D86031
-
Jonas Devlieghere authored
Fixes multi-process-driver.cpp:221:19: error: use of undeclared identifier 'SIG_IGN'
-
Jonas Devlieghere authored
Only link against Python3_LIBRARY when LLDB_ENABLE_PYTHON is true. We have to be more strict now becuase Python3_LIBRARY might be set to NOTFOUND instead of being not set at all.
-
Matt Arsenault authored
We may have an SGPR->VGPR copy if a totally uniform pointer calculation is used for a VGPR pointer operand. Also hack around a bug in MUBUF matching which would incorrectly use MUBUF for global when flat was requested. This should really be a predicate on the parent pattern, but the DAG always checked this manually inside the complex pattern.
-
Amy Huang authored
This sets some config parameters so we can run the asan tests with llvm-lit, e.g. `./bin/llvm-lit [...]/compiler-rt/test/asan` Differential Revision: https://reviews.llvm.org/D83821
-
Jonas Devlieghere authored
The comment says that TestMultipleDebuggers was XFAILed because it was failing nondeterministically in which case it should be skipped not failed (as XPASS will cause the test suite to fail). The reason it fails is because it was not marked as a no-debug-info test case. I've ran the test in a loop and it has been passing consistently. Let's enable it and see if the bots agree, if not we can skip it.
-
Walter Erquinigo authored
Run clang-format on all the c++ file of this project.
-
Alex Zinenko authored
This function is available on llvm::Type and has been used by some clients of the LLVM dialect before the transition. Implement the MLIR counterpart. Reviewed By: schweitz Differential Revision: https://reviews.llvm.org/D85847
-
Rahul Joshi authored
- Add variants of getAnalysis() and friends that operate on a specific derived operation types. - Add OpPassManager::getAnalysis() to always call the base getAnalysis() with OpT. - With this, an OperationPass can call getAnalysis<> using an analysis type that is generic (works on Operation *) or specific to the OpT for the pass. Anything else will fail to compile. - Extend AnalysisManager unit test to test this, and add a new PassManager unit test to test this functionality in the context of an OperationPass. Differential Revision: https://reviews.llvm.org/D84897
-
- Aug 17, 2020
-
-
Jonas Devlieghere authored
This patch is a big sed to rename the following variables: s/PYTHON_LIBRARIES/Python3_LIBRARIES/g s/PYTHON_INCLUDE_DIRS/Python3_INCLUDE_DIRS/g s/PYTHON_EXECUTABLE/Python3_EXECUTABLE/g s/PYTHON_RPATH/Python3_RPATH/g I've also renamed the CMake module to better express its purpose and for consistency with FindLuaAndSwig. Differential revision: https://reviews.llvm.org/D85976
-
George Rokos authored
Differential Revision: https://reviews.llvm.org/D86082
-
Steven Perron authored
If the same stream object is used for multiple compiles, the PAL metadata from eariler compilations will leak into later one. See https://github.com/GPUOpen-Drivers/llpc/issues/882 for how this is happening in LLPC. No tests were added because multiple compiles will have to happen using the same pass manager, and I do not see a setup for that on the LLVM side. Let me know if there is a good way to test this. Reviewed By: nhaehnle Differential Revision: https://reviews.llvm.org/D85667
-