forked from llvm/llvm-project
-
Notifications
You must be signed in to change notification settings - Fork 341
[AArch64][WinCFI] Fix a crash due to missing seh directives #9884
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
…te expansion weren't verified. (llvm#116505) --------- Co-authored-by: Doug Wyatt <[email protected]>
The old code did not take the indentation into account. (cherry picked from commit 8b2dff9)
…vm#116727) depends on llvm#116711 [lldb] Improve rendering of inline diagnostics on the same column by fixing the indentation and printing these annotations in the original order. Before a+b+c; ^ ^ ^ | | error: 3 | |note: 2b | error: 2a error: 1 After a+b+c; ^ ^ ^ | | error: 3 | error: 2a | note: 2b error: 1 (cherry picked from commit 6b4f675)
…lvm#116876) Based on post-commit review feedback by Felipe Piovezan! (cherry picked from commit 174899f)
…tests [lldb][test] Renable tests on asan builds
This patch improves the formatting of editline completions. The current implementation is naive and doesn't account for the terminal width. Concretely, the old implementation suffered from the following issues: - We would unconditionally pad to the longest completion. If that completion exceeds the width of the terminal, that would result in a lot of superfluous white space and line wrapping. - When printing the description, we wouldn't account for the presence of newlines, and they would continue without leading padding. The new code accounts for both. If the completion exceeds the available terminal width, we show what fits on the current lined followed by ellipsis. We also no longer pad beyond the length of the current line. Finally, we print the description line by line, with the proper leading padding. If a line of the description exceeds the available terminal width, we print ellipsis and won't print the next line. Before: ``` Available completions: _regexp-attach -- Attach to process by ID or name. _regexp-break -- Set a breakpoint using one of several shorthand formats. _regexp-bt -- Show backtrace of the current thread's call sta ck. Any numeric argument displays at most that many frames. The argument 'al l' displays all threads. Use 'settings set frame-format' to customize the pr inting of individual frames and 'settings set thread-format' to customize th e thread header. Frame recognizers may filter thelist. Use 'thread backtrace -u (--unfiltered)' to see them all. _regexp-display -- Evaluate an expression at every stop (see 'help target stop-hook'.) ``` After: ``` Available completions: _regexp-attach -- Attach to process by ID or name. _regexp-break -- Set a breakpoint using one of several shorth... _regexp-bt -- Show backtrace of the current thread's call ... _regexp-display -- Evaluate an expression at every stop (see 'h... ``` rdar://135818198 (cherry picked from commit dd78d7c)
…240723-lldb-Fix-a-positioning-bug-in-diagnostics-output-116711 [Cherry-pick into stable/20240723] [lldb] Fix a positioning bug in diagnostics output (llvm#116711)
The computation of the key may itself does DWARF lookups which may acquire additional locks through callbacks into TypeSystem. rdar://139841554
Add missing nullptr checks
[lldb] Acquire the map lock after deriving the lookup key
…3-dd78d7c7be5b [🍒 stable/20240723] [lldb] Improve editline completion formatting (llvm#116456)
…-swiftexpressionparser-stable0723 [lldb][Plugins][Swift] Reflect API changes in `SwiftExpressionParser`
…y-imports 🍒 [clang][serialization] Blobify IMPORTS strings and signatures
Arguably as a bug, Clang has previously not mixed up Objective-C parameter names with types. This allows developers to write parameter names that _should_ shadow type names, but don't. For instance: @interface Foo -(void)foo:(int)id bar:(id)name; // OK @EnD Commit 9778808 changed the way that parameters are parsed to bring it more in line with how C parameters are parsed, but it breaks the example above. Given an expectation that the change wouldn't introduce source breaks, this is not something we can go forward with. 977880... did this so that late-parsed attributes could reference Objective-C parameters. This change buffers Objective-C parameter info until after all parameters are parsed and turns them into parameter declarations before realizing late-parsed attributes instead. Radar-ID: 139996306
[lldb] Update for removal of `ModuleDecl::addFile`
…lvm#111729) Use SEND_ERROR (continue processing, but skip generation) instead of FATAL_ERROR (stop processing and generation). This means that developers get to see all errors at once, instead of seeing just the first error and having to reconfigure to discover the next one.
…m#111747) This module is used in various helper scripts since llvm#93712
If a C++ class template is annotated via API Notes, the instantiations had the attributes repeated twice. This is because Clang was adding the attribute twice while processing the same class template. This change makes sure we don't try to add attributes from API Notes twice. There is currently no way to annotate specific instantiations using API Notes. rdar://142539959 (cherry picked from commit feb7872)
…es-class-template 🍒[APINotes] Avoid duplicated attributes for class template instantiations
Fixes 0e91323 / llvm#111531 For reasons I can't explain, a clean build works fine for me, and all the bots are working fine. But if I rebuild in some way the make tool becomes None. Looking at the other variables, they had these extra lines so I've added those for make and it seems to solve the problem. (cherry picked from commit a2bd5db) Co-authored-by: David Spickett <[email protected]>
This adds support for annotating function parameters with __counted_by, __sized_by, __counted_by_or_null, __sized_by_or_null, and __ended_by, using API notes. The main content of handlePtrCountedByEndedByAttr is extracted to applyPtrCountedByEndedByAttr and decoupled from ParsedAttr. The helper function ParseBoundsAttributeArgFromString is added to make it possible to parse count expressions from SemaAPINotes. The current implementation of __terminated_by/__null_terminated makes it harder to extract from the iterative type processing, but since it doesn't require any extra context to parse the attribute, it can be applied using the normal Type override instead. rdar://139830881
Introduces the first of a new group of commands for working with Swift Task instances. The new command group is `language swift task`, and the first command is `backtrace`. This `backtrace` command takes the name of a task variable and prints the task's backtrace. The variable can be either `Task<Success, Failure>` or `UnsafeCurrentTask`. The output is similar to the builtin `thread backtrace` (`bt`) command. See the original PR: swiftlang#9787
…riples in Clang Driver This change moves arm64e pointer authentication flag computation the the DarwinClang toolchain to the base MachO toolchain. This makes the logic apply to all Mach-O target triples, not just Darwin ones.
…ray is indexed by const evaluatable expressions (llvm#119340)" This reverts commit 64c2156. Causes asserts, see llvm#119340 (comment) (cherry picked from commit 7dd34ba)
…rray is indexed by const evaluatable expressions (llvm#119340)"" (llvm#123713) This reverts commit 7dd34ba. Fixed the assertion violation reported by 7dd34ba Co-authored-by: MalavikaSamak <[email protected]> (cherry picked from commit 2a8c12b)
…expression Cherry pick commits that relanded commit 34a72d1
Introduce `language swift task select <task>`. This uses much of the work done for `task backtrace`, including the artificial thread class `ThreadTask`. This change allows users to select a task, as though it is a thread. From there, they can run other thread commands, such as `backtrace`. Users can also then run frame navigation commands, such as `up`/`down`/`frame select`.
Cherry pick commit llvm#123993
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Cherry pick commit llvm#123993