- Mar 25, 2020
-
-
Sanjay Patel authored
-
Raphael Isemann authored
Summary: These two variables are only incremented under LLDB_CONFIGURATION_DEBUG but their value is always logged when verbose lldb formatter logging is enabled, which causes that our cache hit/miss log looks like this in non-Debug builds: ``` Cache hits: 0 - Cache Misses: 0 ... Cache hits: 0 - Cache Misses: 0 ... Cache hits: 0 - Cache Misses: 0 ``` This just always increments those two counters independent of build mode. Reviewers: JDevlieghere Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D76687
-
Raphael Isemann authored
Summary: Dumping the frame using the user-set format could cause that a debug LLDB doesn't behave as a release LLDB, which could potentially break replaying a reproducer. Also it's kinda strange that the frame format set by the user is used in the internal log output. Reviewers: JDevlieghere Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D76685
-
River Riddle authored
Summary: This revisions performs several cleanups to the generated dialect documentation: * Standardizes format of attributes/operands/results sections * Splits out operation/type/dialect documentation generation to allow for composing generated and hand-written documentation * Add section for declarative assembly syntax and successors * General cleanup Differential Revision: https://reviews.llvm.org/D76573
-
Reid Kleckner authored
This reverts commit 4e0fe038. Re-lands 65b21282. After landing 5ff5ddd0 to add int3 into trailing unreachable blocks, we can now remove these extra stack adjustments without confusing the Win64 unwinder. See https://llvm.org/45064#c4 or X86AvoidTrailingCall.cpp for a full explanation. Fixes PR45064.
-
Louis Dionne authored
This allows creating custom test formats on top of `executeShTest` that inject commands at the beginning of the file being parsed, without requiring these commands to physically appear in the test file itself. For example, one could define a test format that prints out additional debug information at the beginning of each test. More realistically, this has been used to define custom test formats like one that supports compilation failure tests (e.g. with the extension `compile.fail.cpp`) by injecting a command that calls the compiler on the file itself and expects it to fail. Without this change, the only alternative is to create a temporary file with the same content as the original test, then prepend the desired `// RUN:` lines to that file, and call `executeShTest` on that file instead. This is both slow and cumbersome to do. Differential Revision: https://reviews.llvm.org/D76290
-
Vedant Kumar authored
lldb currently guesses the address to use when creating an artificial frame (i.e., a frame constructed by determining the sequence of (tail) calls which must have happened). Guessing the address creates problems -- use the actual address provided by the DW_AT_call_pc attribute instead. Depends on D76336. rdar://60307600 Differential Revision: https://reviews.llvm.org/D76337
-
Vedant Kumar authored
Record the address of a tail-calling branch instruction within its call site entry using DW_AT_call_pc. This allows a debugger to determine the address to use when creating aritificial frames. This creates an extra attribute + relocation at tail call sites, which constitute 3-5% of all call sites in xnu/clang respectively. rdar://60307600 Differential Revision: https://reviews.llvm.org/D76336
-
Louis Dionne authored
-
JonChesterfield authored
Summary: [libomptarget][nfc] Explicitly static function scope shared variables `__shared__` in CUDA implies static in function scope. See e.g. D.2.1.1 in CUDA_C_Programming_Guide.pdf, http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/ This is surprising for non-cuda developers, see e.g. D73239 where I thought local variables would be thread local. Tested by IR diff of libomptarget.bc (no change), running in tree tests, and binary diff of the nvcc static archives (no significant change). Reviewers: jdoerfert, ABataev, grokos Reviewed By: jdoerfert Subscribers: openmp-commits Tags: #openmp Differential Revision: https://reviews.llvm.org/D76713
-
Louis Dionne authored
These result codes already exist, but they were not documented. I assume this is an oversight when adding these result codes.
-
Juneyoung Lee authored
Summary: DivRemPairs is unsound with respect to undef values. ``` // bb1: // %rem = srem %x, %y // bb2: // %div = sdiv %x, %y // --> // bb1: // %div = sdiv %x, %y // %mul = mul %div, %y // %rem = sub %x, %mul ``` If X can be undef, X should be frozen first. For example, let's assume that Y = 1 & X = undef: ``` %div = sdiv undef, 1 // %div = undef %rem = srem undef, 1 // %rem = 0 => %div = sdiv undef, 1 // %div = undef %mul = mul %div, 1 // %mul = undef %rem = sub %x, %mul // %rem = undef - undef = undef ``` http://volta.cs.utah.edu:8080/z/m7Xrx5 Same for Y. If X = 1 and Y = (undef | 1), %rem in src is either 1 or 0, but %rem in tgt can be one of many integer values. This resolves https://bugs.llvm.org/show_bug.cgi?id=42619 . This miscompilation disappears if undef value is removed, but it may take a while. DivRemPair happens pretty late during the optimization pipeline, so this optimization seemed as a good candidate to fix without major regression using freeze than other broken optimizations. Reviewers: spatel, lebedev.ri, george.burgess.iv Reviewed By: spatel Subscribers: wuzish, regehr, nlopes, nemanjai, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D76483 -
Benjamin Kramer authored
-
Simon Pilgrim authored
-
Matt Arsenault authored
Forget to squash into 2ea46051
-
Matt Arsenault authored
These currently fail to form add3 due to the pointer type, but they should be handle.
-
Matt Arsenault authored
-
Sanjay Patel authored
Differential Revision: https://reviews.llvm.org/D76702
-
Raphael Isemann authored
Summary: This seems only useful for debugging and it's just plainly printf'ing to the console instead of some log, so let's remove this. Reviewers: #lldb, JDevlieghere Reviewed By: JDevlieghere Subscribers: JDevlieghere Differential Revision: https://reviews.llvm.org/D76699
-
LLVM GN Syncbot authored
-
Hiroshi Yamauchi authored
This reverts commit 129c911e. Due to an internal benchmark regression.
-
Nico Weber authored
-
Nico Weber authored
-
Nico Weber authored
-
- Mar 24, 2020
-
-
Jonas Devlieghere authored
Files imported by the script interpreter aren't opened by LLDB so they don't end up in the reproducer. The solution is to explicitly add them to the FileCollector. Differential revision: https://reviews.llvm.org/D76626
-
David Green authored
This adds a simple fold to combine VMOVrh load to a integer load. Similar to what is already performed for BITCAST, but needs to account for the types being of different sizes, creating an zero extending load. Differential Revision: https://reviews.llvm.org/D76485
-
Sanjay Patel authored
-
Lama authored
The current implementation collects all Preds/Succs of a Dep of kind Output, creating a long chain and subsequently a schedule with an unnecessarily large II. Was this done on purpose for a reason I'm missing? Reviewed By: bcahoon Differential Revision: https://reviews.llvm.org/D75424
-
Simon Pilgrim authored
rL368506 handled the basic case, but we need to account for boolean logic patterns as well.
-
Alexander Belyaev authored
Differential Revision: https://reviews.llvm.org/D76703
-
Haojian Wu authored
Summary: After we parse the switch condition, we don't do the type check for type-dependent expr (e.g. TypoExpr) (in Sema::CheckSwitchCondition), then the TypoExpr is corrected to an invalid-type expr (in Sema::MakeFullExpr) and passed to the ActOnStartOfSwitchStmt, which triggers the assertion. Fix https://github.com/clangd/clangd/issues/311 Reviewers: sammccall Subscribers: ilya-biryukov, kadircet, usaxena95, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D76592
-
Louis Dionne authored
cxx_experimental was never installed because ${experimental_lib} always expands to an empty target. This seems to have been broken by 97d6fcce. -
Yaxun (Sam) Liu authored
The argument after -Xarch_device will be added to the arguments for CUDA/HIP device compilation and will be removed for host compilation. The argument after -Xarch_host will be added to the arguments for CUDA/HIP host compilation and will be removed for device compilation. Differential Revision: https://reviews.llvm.org/D76520
-
Pavel Labath authored
Summary: The directory_count and file_name_count fields are (section 6.2.4 of DWARF5 spec) supposed to be uleb128s, not bytes. This bug meant that it was not possible to correctly parse headers with more than 128 files or directories. I've found this bug by code inspection, though the limit is so small someone would have run into it for real sooner or later. I've verified that the producer side handles many files correctly, and that we are able to parse such files after this fix. Reviewers: dblaikie, jhenderson Subscribers: aprantl, hiraditya, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D76498
-
Juneyoung Lee authored
Summary: - Add FREEZE node to SelDag - Lower FreezeInst (in IR) to FREEZE node - Add Legalization for FREEZE node Reviewers: qcolombet, bogner, efriedma, lebedev.ri, nlopes, craig.topper, arsenm Reviewed By: lebedev.ri Subscribers: wdng, xbolva00, Petar.Avramovic, liuz, lkail, dylanmckay, hiraditya, Jim, arsenm, craig.topper, RKSimon, spatel, lebedev.ri, regehr, trentxintong, nlopes, mkuper, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D29014
-
Sanjay Patel authored
These should really be moved over to a ConstantFolding test file, but since this may overlap with the in-progress D76010 and similar tests already exist here, we can do that as a later cleanup.
-
Sylvain Audi authored
Added support for /map and /map:[filepath]. The output was derived from Microsoft's Link.exe output when using that same option. Note that /MAPINFO support was not added. The previous implementation of MapFile.cpp/.h was meant for /lldmap, and was renamed to LLDMapFile.cpp/.h MapFile.cpp/.h is now for /MAP However, a small fix was added to lldmap, replacing a std::sort with std::stable_sort to enforce reproducibility. Differential Revision: https://reviews.llvm.org/D70557
-
Jaroslav Sevcik authored
Summary: Detection of C strings does not work well for pointers. If the value object holding a (char*) pointer does not have an address (e.g., if it is a temp), the value is not considered a C string and its formatting is left to DumpDataExtractor rather than the special handling in ValueObject::DumpPrintableRepresentation. This leads to inconsistent outputs, e.g., in escaping non-ASCII characters. See the test for an example; the second test expectation is not met (without this patch). With this patch, the C string detection only insists that the pointer value is valid. The patch makes the code consistent with how the pointer is obtained in ValueObject::ReadPointedString. Reviewers: teemperor Reviewed By: teemperor Subscribers: lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D76650
-
Simon Pilgrim authored
rL368506 handled the basic case, but we need to account for boolean logic patterns as well.
-
Hanhan Wang authored
Differential Revision: https://reviews.llvm.org/D76661
-