- Feb 05, 2020
-
-
Francis Visoiu Mistrih authored
This extends the RemarkStreamer to allow for other emitters (e.g. frontends, SIL, etc.) to emit remarks through a common interface. See changes in llvm/docs/Remarks.rst for motivation and design choices. Differential Revision: https://reviews.llvm.org/D73676
-
Alina Sbirlea authored
clang-tidy + clang-format
-
Reid Kleckner authored
-
Jonas Devlieghere authored
-
Adrian McCarthy authored
My refactor caused some changes in error reporting that TestAddDsymCommand.py was checking, so this restores some of the changes to preserve the old behavior and to un-xfail the affected test. Differential Revision: https://reviews.llvm.org/D74001
-
Louis Dionne authored
The tests were slightly underspecifying the current behavior of Clang.
-
Jonas Devlieghere authored
Rename all variables used in the LLDB_RECORD macros to start with an underscore to avoid conflicts with the arguments being recorded.
-
Jonas Devlieghere authored
Pretty printing the return value, although a good idea in theory, turned out to be more confusing than anything else because they require printing the log statement after the arguments and resulting value have been serialized. This changes the logging to behave more like how deserialization is traced, although a bit more verbose because some of the serializers are are calling each other.
-
Craig Topper authored
lrint/llrint are defined as rounding using the current rounding mode. Numbers that can't be converted raise FE_INVALID and an implementation defined value is returned. They may also write to errno. I believe this means we can use cvtss2si/cvtsd2si or fist to convert as long as -fno-math-errno is passed on the command line. Clang will leave them as libcalls if errno is enabled so they won't become ISD::LRINT/LLRINT in SelectionDAG. For 64-bit results on a 32-bit target we can't use cvtss2si/cvtsd2si but we can use fist since it can write to a 64-bit memory location. Though maybe we could consider using vcvtps2qq/vcvtpd2qq on avx512dq targets? gcc also does this optimization. I think we might be able to do this with STRICT_LRINT/LLRINT as well, but I've left that for future work. Differential Revision: https://reviews.llvm.org/D73859
-
Dimitry Andric authored
This is fixing a build error: error: non-constant-expression cannot be narrowed from type 'unsigned int' to 'Region::iterator::difference_type' (aka 'int') in initializer list Fix pr44767
-
Reid Kleckner authored
These try_lock usages intentionally ignore the result, as commented. Similar to 4d23764d, which was reviewed previously.
-
Evgenii Stepanov authored
Summary: `sigaltstack` interception is implemented D73816. This updated OpenBSD and Solaris bits to fix the build errors. Reviewers: eugenis Reviewed By: eugenis Subscribers: fedor.sergeev, krytarowski, emaste, eugenis, dberris, #sanitizers, llvm-commits Tags: #sanitizers, #llvm Patch by Igor Sugak. Differential Revision: https://reviews.llvm.org/D73976
-
Reid Kleckner authored
-
Alex Langford authored
This is not specific to clang types. It operates on CompilerTypes in general.
-
Alex Langford authored
-
Reid Kleckner authored
To factor the error checking, use importChecked instead of importSeq. This avoids repeating the names of all of the imported child nodes once, and allows errors to be checked with a single conditional as it is with importSeq. After: peak memory: 601.63MB real: 0m19.172s obj size: 8,352kb Before: peak memory: 954.11MB real: 0m26.188s obj size: 10,000kb The speed is not as impressive as I hoped, but the memory use reduction is impressive, and seems worth it. Reviewed By: martong, shafik Differential Revision: https://reviews.llvm.org/D73675
-
Craig Topper authored
These aren't recognized as idioms by the CPU so they still use execution resources. We just use the pseudo to force the input register to k0.
-
Reid Kleckner authored
The CATCHPAD node mostly existed to be selected into the EH_RESTORE instruction, which sets the frame back up when 32-bit Windows exceptions return to the parent function. However, creating this MachineInstr early increases the risk that other passes will come along and insert instructions that use the stack before ESP and EBP are restored. That happened in PR44697. Instead of representing these in the instruction stream early, delay it until PEI. Mark the blocks where this needs to happen as EHPads, but not funclet entry blocks. Passes after PEI have to be careful not to hoist instructions that can use stack across frame setup instructions, so this should be relatively reliable. Fixes PR44697 Reviewed By: hans Differential Revision: https://reviews.llvm.org/D73752
-
Saar Raz authored
We did not have a CXXThisScope around constraint checking of functions and function template specializations, causing a crash when checking a constraint that had a 'this' (bug 44689). Recommit after fixing test.
-
Jonas Devlieghere authored
SBFile::Read and SBFile::Write were missing from the registry.
-
Saar Raz authored
We did not have a CXXThisScope around constraint checking of functions and function template specializations, causing a crash when checking a constraint that had a 'this' (bug 44689)
-
Kiran Chandramohan authored
Add support for Flush in the OMPIRBuilder. This patch also adds changes to clang to use the OMPIRBuilder when '-fopenmp-enable-irbuilder' commandline option is used. Reviewed By: jdoerfert Differential Revision: https://reviews.llvm.org/D70712
-
Alex Langford authored
-
Kamil Rytarowski authored
Fallout after: https://reviews.llvm.org/D73816
-
Alex Langford authored
Summary: lldb-forward.h is convenient in many ways, but having clang-based class forward declarations in there makes it easy to proliferate uses of clang outside of plugins. Removing them makes you much more conscious of when you're using something from clang and marks where we're using things from clang in non-plugins. Differential Revision: https://reviews.llvm.org/D73935
-
Tom Stellard authored
Summary: We were linking all the clang objects and shared libraries into libclang-cpp.so, which was causing the command line options to be registered twice. Reviewers: beanz, mgorny Reviewed By: beanz, mgorny Subscribers: merge_guards_bot, mgorny, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68520
-
Jonas Devlieghere authored
This should fix the modules build on the GreenDragon bot.
-
Jonas Devlieghere authored
Re-land "[lldb] [testsuite] generalize `DWARFASTParserClangTests` based on `DWARFExpressionTest`'s YAML"
-
Jon Chesterfield authored
Summary: [libomptarget] Implement wavefront functions for amdgcn Reviewers: jdoerfert, ABataev, grokos, arsenm Reviewed By: arsenm Subscribers: saiislam, wdng, arsenm, jvesely, openmp-commits Tags: #openmp Differential Revision: https://reviews.llvm.org/D73077
-
Dimitry Andric authored
This was broken by 28c91219, which added `struct_stack_t_sz` only to sanitizer_platform_limits_posix.{cpp,h}.
-
Jan Kratochvil authored
Revert: [lldb] [testsuite] generalize `DWARFASTParserClangTests` based on `DWARFExpressionTest`'s YAML It is causing a failure on OSX, to be investigated more. Differential Revision: https://reviews.llvm.org/D73279
-
Simon Pilgrim authored
We only accept tok::TokenKind::comment enum values so no need to add other cases. Seems to be a cut+paste typo.
-
Matt Arsenault authored
We were handling the case where the result was a struct with an extracted SGPR component, but not for the simple case.
-
Jonas Devlieghere authored
Unless trivially copyable, SB classes that are passed by value should be treated as const references by the reproducer infrastructure and their address should be serialized. This is already the case on the serialization side, but not on the deserialization side. This fixes that by removing the NotImplementedTag.
-
Jonas Devlieghere authored
Currently SBFile isn't really instrumented, which was causing trouble when capturing and replaying the Python test suite. The class is particularly tricky because one of its constructors takes a FileSP which isn't instrumented. Until we have proper shadowing in place, we'll simply always record a nullptr. Differential revision: https://reviews.llvm.org/D73992
-
Simon Pilgrim authored
Be more specific that getOperandConstraint should return -1 or a uint8_t value
-
Matt Arsenault authored
-
Matt Arsenault authored
We don't need to expand to full shifts for the > 32-bit case. This just switches to a sext_inreg of the high half.
-
Matt Arsenault authored
Split the VALU 64-bit case in RegBankSelect.
-