{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":75821432,"defaultBranch":"main","name":"llvm-project","ownerLogin":"llvm","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-12-07T09:39:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/17149993?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1715884364.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"a0a7438eecc847d2910b126da6895e85863accad","ref":"refs/heads/users/MaskRay/spr/elf-support-high-address-dw_eh_sdata4-for-elfclass32","pushedAt":"2024-05-16T18:32:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"MaskRay","name":"Fangrui Song","path":"/MaskRay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/416322?s=80&v=4"},"commit":{"message":"[š˜€š—½š—æ] initial version\n\nCreated using spr 1.3.5-bogner","shortMessageHtmlLink":"[š˜€š—½š—æ] initial version"}},{"before":"23f1047daac9702876ca99b53e8fe649fca569fa","after":"da928c6d6e0e2f619fdaef71cea8747d9aef188d","ref":"refs/heads/main","pushedAt":"2024-05-16T18:10:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"sdkrystian","name":"Krystian Stasiowski","path":"/sdkrystian","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16629302?s=80&v=4"},"commit":{"message":"[Clang][Sema] ASTContext::getUnconstrainedType propagates dependence (#92425)\n\nWhen the argument passed to `ASTContext::getUnconstrainedType` is an\r\nunconstrained `AutoType`, will return the argument unchanged. However,\r\nwhen called with a constrained `AutoType`, an unconstrained,\r\nnon-dependent `AutoType` will be returned even if the argument was\r\ndependent. Consider the following:\r\n```\r\ntemplate\r\nconcept C = sizeof(T) == sizeof(int);\r\n\r\ntemplate\r\nstruct A;\r\n\r\ntemplate\r\nstruct A; // error: class template partial specialization is not more specialized than the primary template\r\n```\r\nWhen comparing the template parameters for equivalence,\r\n`ASTContext::getUnconstrainedType` is used to remove the constraints per\r\n[temp.over.link] p6 sentence 2. For the template\r\nparameter `N` of the class template, it returns a dependent `AutoType`.\r\nFor the template parameter `N` of the class template partial\r\nspecialization, it returns a non-dependent `AutoType`. We subsequently\r\ncompare the adjusted types and find they are not equivalent, thus we\r\nconsider the partial specialization to not be more specialized than the\r\nprimary template per [temp.func.order] p6.2.2.\r\n\r\nThis patch changes `ASTContext::getUnconstrainedType` such that the\r\ndependence of a constrained `AutoType` will propagate to the returned\r\nunconstrained `AutoType`. This causes the above example to be correctly\r\naccepted, fixing #77377.","shortMessageHtmlLink":"[Clang][Sema] ASTContext::getUnconstrainedType propagates dependence (#ā€¦"}},{"before":"525bd66fc29fd056ef18118dfff3c9cc05fdd5e3","after":"23f1047daac9702876ca99b53e8fe649fca569fa","ref":"refs/heads/main","pushedAt":"2024-05-16T18:04:17.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"goldsteinn","name":null,"path":"/goldsteinn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35538541?s=80&v=4"},"commit":{"message":"[InstCombine] Fold `(icmp pred (trunc nuw/nsw X), C)` -> `(icmp pred X, (zext/sext C))`\n\nThis is valid as long as the sign of the wrap flag doesn't differ from\nthe sign of the `pred`.\n\nProofs: https://alive2.llvm.org/ce/z/35NsrR\n\nNB: The online Alive2 hasn't been updated with `trunc nuw/nsw`\nsupport, so the proofs must be reproduced locally.\n\nCloses #87935","shortMessageHtmlLink":"[InstCombine] Fold (icmp pred (trunc nuw/nsw X), C) -> `(icmp pred ā€¦"}},{"before":"0dc80e4b2640f80a5b421e6e636d2a7243150917","after":"525bd66fc29fd056ef18118dfff3c9cc05fdd5e3","ref":"refs/heads/main","pushedAt":"2024-05-16T17:41:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"JDevlieghere","name":"Jonas Devlieghere","path":"/JDevlieghere","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/712896?s=80&v=4"},"commit":{"message":"[lldb-dap] Separate user and developer documentation (#92428)\n\nThe README.md is what users see when they look for the extension in the\r\nMarketplace [1]. Right now, it's a mix of developer documentation (for\r\nus) and user documentation. This commit moves the developer docs into\r\n`docs` and the lldb website and refocuses the README on using the\r\nextension.\r\n\r\n[1] https://marketplace.visualstudio.com/items?itemName=llvm-vs-code-extensions.lldb-dap","shortMessageHtmlLink":"[lldb-dap] Separate user and developer documentation (#92428)"}},{"before":"c7ae8c6639370ccbc583dca019bbb78761ce423d","after":"0dc80e4b2640f80a5b421e6e636d2a7243150917","ref":"refs/heads/main","pushedAt":"2024-05-16T17:35:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"kazutakahirata","name":"Kazu Hirata","path":"/kazutakahirata","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/57370056?s=80&v=4"},"commit":{"message":"[memprof] Group MemProf data structures into a struct (NFC) (#92360)\n\nThis patch groups the three Memprof data structures into a struct\r\nnamed IndexedMemProfData and teaches InstrProfWriter to use it. This\r\nway, we can pass IndexedMemProfData to writeMemProf and its helpers\r\ninstead of individual data structures.\r\n\r\nAs a follow-up, we can use the new struct in MemProfReader also. That\r\nin turn allows loadInput in llvm-profdata to move the MemProf data\r\ninto the writer context, saving a few seconds for a large MemProf\r\nprofile.","shortMessageHtmlLink":"[memprof] Group MemProf data structures into a struct (NFC) (#92360)"}},{"before":"f03430f5e37e8eb64878dc538b05210adea2d80f","after":"c7ae8c6639370ccbc583dca019bbb78761ce423d","ref":"refs/heads/main","pushedAt":"2024-05-16T17:30:31.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"slydiman","name":"Dmitry Vasilyev","path":"/slydiman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16115622?s=80&v=4"},"commit":{"message":"[lldb] Fixed the DAP tests in case of a remote target (#92416)\n\nThese tests are based on dap_server which runs locally. These tests\r\nfailed in case of Windows host and Linux target.","shortMessageHtmlLink":"[lldb] Fixed the DAP tests in case of a remote target (#92416)"}},{"before":"bd6c358d01f6ebc3851996e2c29c47b08e992525","after":"f03430f5e37e8eb64878dc538b05210adea2d80f","ref":"refs/heads/main","pushedAt":"2024-05-16T17:25:04.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"mordante","name":"Mark de Wever","path":"/mordante","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1362617?s=80&v=4"},"commit":{"message":"[libc++] LWG3672: `common_iterator::operator->()` should return by value (#87899)\n\n## Abstract\r\n\r\nThis pull request implements LWG3672: `common_iterator::operator->()`\r\nshould return by value. The current implementation specifies that this\r\nfunction should return the underlying pointer by reference (`T*\r\nconst&`), but it would be more intuitive to return it by value (`T*`).\r\n\r\n## Reference\r\n\r\n- [Draft C++ Standard:\r\n[common.iter.access]](https://eel.is/c++draft/common.iter.access)\r\n- [LWG3672](https://cplusplus.github.io/LWG/issue3672)","shortMessageHtmlLink":"[libc++] LWG3672: common_iterator::operator->() should return by vaā€¦"}},{"before":"224116ab9f4d97acb0cca76dc63c1d3d4a253078","after":"bd6c358d01f6ebc3851996e2c29c47b08e992525","ref":"refs/heads/main","pushedAt":"2024-05-16T16:54:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"JDevlieghere","name":"Jonas Devlieghere","path":"/JDevlieghere","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/712896?s=80&v=4"},"commit":{"message":"[lldb-dap] Update repository in package.json\n\nUse https://github.com/llvm/vscode-lldb instead of the monorepo, for\nconsistency with the other two extensions (mlir, clangd).","shortMessageHtmlLink":"[lldb-dap] Update repository in package.json"}},{"before":"033fa81480a7e8d0a6cf2f72b52232275145d105","after":"224116ab9f4d97acb0cca76dc63c1d3d4a253078","ref":"refs/heads/main","pushedAt":"2024-05-16T16:52:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"erichkeane","name":"Erich Keane","path":"/erichkeane","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8562757?s=80&v=4"},"commit":{"message":"Revert \"[Clang][CWG1815] Support lifetime extension of temporary created by aggregate initialization using a default member initializer (#87933)\"\n\nThis reverts commit 17daa204feadf9c28fc13b7daa69c3cbe865b238.\n\nMultiple examples on the PR\nhttps://github.com/llvm/llvm-project/pull/87933\n\nshow regressions, so reverting until they can be fixed in the followup.","shortMessageHtmlLink":"Revert \"[Clang][CWG1815] Support lifetime extension of temporary creaā€¦"}},{"before":"ce67fcf15f4ffac00a715cf724bc72e37f063064","after":"033fa81480a7e8d0a6cf2f72b52232275145d105","ref":"refs/heads/main","pushedAt":"2024-05-16T16:48:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jhuber6","name":"Joseph Huber","path":"/jhuber6","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35342157?s=80&v=4"},"commit":{"message":"[Offload][NFC] Remove unused files following static plugins\n\nSummary:\nForgot to remove these when I landed the initial patch, they are no\nlonger used.","shortMessageHtmlLink":"[Offload][NFC] Remove unused files following static plugins"}},{"before":"e8692b88bec1d43325804d75166d9483d6c17fc7","after":"ce67fcf15f4ffac00a715cf724bc72e37f063064","ref":"refs/heads/main","pushedAt":"2024-05-16T16:25:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"alexey-bataev","name":"Alexey Bataev","path":"/alexey-bataev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5361294?s=80&v=4"},"commit":{"message":"Avoid unevaluated implicit private (#92055)\n\nFor every variable used under `#pragma omp task` directive\r\n(`DeclRefExpr`) an ImplicitPrivateVariable is created in the AST, if\r\n`private` or `shared` clauses are not present. If the variable has the\r\nproperty of `non_odr_use_unevaluated` e.g. for statements which use\r\n`sizeof( i )` `i` will have `non_odr_use_unevaluated` . In such cases\r\nCodeGen was asserting by avoiding emitting of LLVM IR for such\r\nvariables. To prevent this assertion this checkin avoids adding the\r\nImplicitPrivateVariable for variables with `non_odr_use_unevaluated`.\r\n\r\n---------\r\n\r\nAuthored-by: Sunil Kuravinakop ","shortMessageHtmlLink":"Avoid unevaluated implicit private (#92055)"}},{"before":"b82fd5d75cff87f7480a24d4a16ea8400cc35c86","after":"e8692b88bec1d43325804d75166d9483d6c17fc7","ref":"refs/heads/main","pushedAt":"2024-05-16T16:18:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"aeubanks","name":"Arthur Eubanks","path":"/aeubanks","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10538900?s=80&v=4"},"commit":{"message":"[NewPM] Add pass options for InternalizePass to preserve GVs (reland) (#92383)\n\nReland of https://github.com/llvm/llvm-project/pull/91334, which broke\r\nthe gcc7 buildbot and was reverted in\r\nhttps://github.com/llvm/llvm-project/pull/92321.\r\nWork around the failure by being explicit about returning an `Expected`.\r\n\r\ncc @joker-eph","shortMessageHtmlLink":"[NewPM] Add pass options for InternalizePass to preserve GVs (reland) (ā€¦"}},{"before":"b28766eb3f20354d1d7a34ea83b9d915c3715032","after":"b82fd5d75cff87f7480a24d4a16ea8400cc35c86","ref":"refs/heads/main","pushedAt":"2024-05-16T16:16:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Pierre-vh","name":"Pierre van Houtryve","path":"/Pierre-vh","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/29600849?s=80&v=4"},"commit":{"message":"[GlobalISel] Initialize variables in IndexedLoadStoreMatchInfo","shortMessageHtmlLink":"[GlobalISel] Initialize variables in IndexedLoadStoreMatchInfo"}},{"before":"3abd3d6e597cba5161f37fa0478382fc93a8c9fd","after":"b28766eb3f20354d1d7a34ea83b9d915c3715032","ref":"refs/heads/main","pushedAt":"2024-05-16T16:15:17.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"efriedma-quic","name":"Eli Friedman","path":"/efriedma-quic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/56606707?s=80&v=4"},"commit":{"message":"[Arm64EC] Correctly handle sret in entry thunks. (#92326)\n\nI accidentally left out the code to transfer sret attributes to entry\r\nthunks, so values weren't being passed in the right registers, and the\r\nsret pointer wasn't returned in the correct register.\r\n\r\nFixes #90229","shortMessageHtmlLink":"[Arm64EC] Correctly handle sret in entry thunks. (#92326)"}},{"before":"117d755b1b84c7d379ea5c3d93f8c2ab9bfcde82","after":"3abd3d6e597cba5161f37fa0478382fc93a8c9fd","ref":"refs/heads/main","pushedAt":"2024-05-16T16:13:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"jhuber6","name":"Joseph Huber","path":"/jhuber6","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/35342157?s=80&v=4"},"commit":{"message":"[Libomptarget] Remove requires information from plugin (#80345)\n\nSummary:\r\nCurrently this is only used for the zero-copy handling. However, this\r\ncan easily be moved into `libomptarget` so that we do not need to bother\r\nsetting the requires flags in the plugin. The advantage here is that we\r\nno longer need to do this for every device redundently. Additionally,\r\nthese requires flags are specifically OpenMP related, so they should\r\nlive in `libomptarget`.","shortMessageHtmlLink":"[Libomptarget] Remove requires information from plugin (#80345)"}},{"before":"309a881dccb82bf1f101cf138bee3e7400968ed8","after":"117d755b1b84c7d379ea5c3d93f8c2ab9bfcde82","ref":"refs/heads/main","pushedAt":"2024-05-16T16:04:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RKSimon","name":"Simon Pilgrim","path":"/RKSimon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2175834?s=80&v=4"},"commit":{"message":"[DAG] SimplifyDemandedBits - use ComputeKnownBits instead of getValidShiftAmountConstant to check for constant shift amounts. (#92412)\n\nThis allows us to handle cases where the constant has already been type legalized behind a bitcast\r\n\r\nDespite calling ComputeKnownBits I'm not seeing any notable change in compile time.","shortMessageHtmlLink":"[DAG] SimplifyDemandedBits - use ComputeKnownBits instead of getValidā€¦"}},{"before":"cdb41e416adcd49a783f0d3d28d1e3fafb6f5429","after":"309a881dccb82bf1f101cf138bee3e7400968ed8","ref":"refs/heads/main","pushedAt":"2024-05-16T15:56:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"fhahn","name":"Florian Hahn","path":"/fhahn","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/450489?s=80&v=4"},"commit":{"message":"[VPlan] Address remaining comments for #85689.\n\nAddress comments missed when landing\nhttps://github.com/llvm/llvm-project/pull/85689.","shortMessageHtmlLink":"[VPlan] Address remaining comments for #85689."}},{"before":"ee407e17a3a4986bab49272665abc9973d78691d","after":"cdb41e416adcd49a783f0d3d28d1e3fafb6f5429","ref":"refs/heads/main","pushedAt":"2024-05-16T15:54:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"arsenm","name":"Matt Arsenault","path":"/arsenm","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/138339?s=80&v=4"},"commit":{"message":"PlaceSafepoints: Fix using default constructed TargetLibraryInfo (#92411)","shortMessageHtmlLink":"PlaceSafepoints: Fix using default constructed TargetLibraryInfo (#92411"}},{"before":"5ac34358181b21135851979c1c949632be5a9d32","after":"ee407e17a3a4986bab49272665abc9973d78691d","ref":"refs/heads/main","pushedAt":"2024-05-16T15:49:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Renaud-K","name":"Renaud Kauffmann","path":"/Renaud-K","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50748669?s=80&v=4"},"commit":{"message":"[flang] AliasAnalysis: More formally define and distinguish between data and non-data (#91020)\n\nThis PR is an implementation for changes proposed in\r\nhttps://discourse.llvm.org/t/rfc-distinguish-between-data-and-non-data-in-fir-alias-analysis/78759\r\n\r\nTest updates were made when the query was on the wrong reference. So, it\r\nis my hope that this will clear ambiguity on the nature of the queries\r\nfrom here on.\r\nThere are also some TODOs that were addressed. \r\n\r\nIt also partly implements what\r\nhttps://github.com/llvm/llvm-project/pull/87723 is attempting to\r\naccomplish. At least, on a point-to-point query between references, the\r\ndistinction is made. To apply it to TBAA, would be another PR.\r\n\r\nNote that, the changes were minimal in the TBAA code to retain the\r\ncurrent results.","shortMessageHtmlLink":"[flang] AliasAnalysis: More formally define and distinguish between dā€¦"}},{"before":"d1f96d4cfe25770827b5f819b6a9de6fef142c9c","after":"5ac34358181b21135851979c1c949632be5a9d32","ref":"refs/heads/main","pushedAt":"2024-05-16T15:01:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"danakj","name":"Dana Jansens","path":"/danakj","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/342377?s=80&v=4"},"commit":{"message":"Respect the [[clang::unsafe_buffer_usage]] attribute for constructors (#91777)\n\nThe -Wunsafe-buffer-usage warning should fire on any call to a function\r\nannotated with [[clang::unsafe_buffer_usage]], however it omitted calls\r\nto constructors, since the expression is a CXXConstructExpr which does\r\nnot subclass CallExpr. Thus the matcher on callExpr() does not find\r\nthese expressions.\r\n\r\nAdd a new WarningGadget that matches cxxConstructExpr that are calling a\r\nCXXConstructDecl annotated by [[clang::unsafe_buffer_usage]] and fires\r\nthe warning. The new UnsafeBufferUsageCtorAttrGadget gadget explicitly\r\navoids matching against the std::span(ptr, size) constructor because\r\nthat is handled by SpanTwoParamConstructorGadget and we never want two\r\ngadgets to match the same thing (and this is guarded by asserts).\r\n\r\nThe gadgets themselves do not report the warnings, instead each gadget's\r\nStmt is passed to the UnsafeBufferUsageHandler (implemented by\r\nUnsafeBufferUsageReporter). The Reporter is previously hardcoded that a\r\nCXXConstructExpr statement must be a match for std::span(ptr, size), but\r\nthat is no longer the case. We want the Reporter to generate different\r\nwarnings (in the -Wunsafe-buffer-usage-in-container subgroup) for the\r\nspan contructor. And we will want it to report more warnings for other\r\nstd-container-specific gadgets in the future. To handle this we allow\r\nthe gadget to control if the warning is general (it calls\r\nhandleUnsafeBufferUsage()) or is a std-container-specific warning (it\r\ncalls handleUnsafeOperationInContainer()).\r\n\r\nThen the WarningGadget grows a virtual method to dispatch to the\r\nappropriate path in the UnsafeBufferUsageHandler. By doing so, we no\r\nlonger need getBaseStmt in the Gadget interface. The only use of it for\r\nFixableGadgets was to get the SourceLocation, so we make an explicit\r\nvirtual method for that on Gadget. Then the handleUnsafeOperation()\r\ndispatcher can be a virtual method that is only in WarningGadget.\r\n\r\nThe SpanTwoParamConstructorGadget gadget dispatches to\r\nhandleUnsafeOperationInContainer() while the other WarningGadgets all\r\ndispatch to the original handleUnsafeBufferUsage().\r\n\r\nTests are added for annotated constructors, conversion operattors, call\r\noperators, fold expressions, and regular methods.\r\n\r\nIssue #80482","shortMessageHtmlLink":"Respect the [[clang::unsafe_buffer_usage]] attribute for constructors (ā€¦"}},{"before":"d665d51c9296fc0b57945bb67e06040e26cd03c5","after":"d1f96d4cfe25770827b5f819b6a9de6fef142c9c","ref":"refs/heads/main","pushedAt":"2024-05-16T14:53:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Endilll","name":"Vlad Serebrennikov","path":"/Endilll","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/12883766?s=80&v=4"},"commit":{"message":"[clang][NFC] Claim support for P3106R1 since Clang 17\n\nTest for this paper were added in https://github.com/llvm/llvm-project/pull/91435","shortMessageHtmlLink":"[clang][NFC] Claim support for P3106R1 since Clang 17"}},{"before":"f579dcf816b5626724e9eae5feea594008b5c863","after":"d665d51c9296fc0b57945bb67e06040e26cd03c5","ref":"refs/heads/main","pushedAt":"2024-05-16T14:34:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"slydiman","name":"Dmitry Vasilyev","path":"/slydiman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16115622?s=80&v=4"},"commit":{"message":"[lldb] Fixed the DAP tests in case of a remote target (#92398)\n\nThese tests failed in case of Windows host and Linux target, because\r\ndap_server tried to run ELF file on Windows.","shortMessageHtmlLink":"[lldb] Fixed the DAP tests in case of a remote target (#92398)"}},{"before":"d94582eea410a04f9f84e39a54276a8418aa2dbb","after":"f579dcf816b5626724e9eae5feea594008b5c863","ref":"refs/heads/main","pushedAt":"2024-05-16T14:34:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"slydiman","name":"Dmitry Vasilyev","path":"/slydiman","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16115622?s=80&v=4"},"commit":{"message":"[lldb] Fixed an invalid error message in the DAP disconnect response (#92345)\n\nThe `disconnect` response contains the `error` message with invalid\r\ncharacters (a junk data). To reproduce this issue it is enough to run\r\nthe `TestDAP_commands` test on Windows host and Linux target. The test\r\nwill fail to run ELF file on Windows and dap_server will be disconnected\r\nunexpectedly.\r\n\r\nNote dap_server hangs if read_packet() cannot decode JSON with invalid\r\ncharacters. read_packet() must return None in this case instead of an\r\nexception. But dap_server does not require any fix after this patch.","shortMessageHtmlLink":"[lldb] Fixed an invalid error message in the DAP disconnect response (#ā€¦"}},{"before":"74a87548e5b62881108e6cd1fd63b45580fc3097","after":"d94582eea410a04f9f84e39a54276a8418aa2dbb","ref":"refs/heads/main","pushedAt":"2024-05-16T14:28:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"NimishMishra","name":null,"path":"/NimishMishra","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/42909663?s=80&v=4"},"commit":{"message":"[flang][OpenMP] Add test for checking overloaded operator in atomic update (#88471)\n\nAtomic update expression does not allow overloaded user-defined\r\noperators. This PR adds a test case for the same; the semantic check is\r\nalready existent.","shortMessageHtmlLink":"[flang][OpenMP] Add test for checking overloaded operator in atomic uā€¦"}},{"before":"6c7ec6e1e6646fb334064bda6f301fdb52390d9b","after":"74a87548e5b62881108e6cd1fd63b45580fc3097","ref":"refs/heads/main","pushedAt":"2024-05-16T14:27:59.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tblah","name":"Tom Eccles","path":"/tblah","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3716681?s=80&v=4"},"commit":{"message":"[flang][MLIR][OpenMP] make reduction by-ref toggled per variable (#92244)\n\nFixes #88935\r\n\r\nToggling reduction by-ref broke when multiple reduction clauses were\r\nused. Decisions made for the by-ref status for later clauses could then\r\ninvalidate decisions for earlier clauses. For example,\r\n\r\n```\r\nreduction(+:scalar,scalar2) reduction(+:array)\r\n```\r\n\r\nThe first clause would choose by value reduction and generate by-value\r\nreduction regions, but then after this the second clause would force\r\nby-ref to support the array argument. But by the time the second clause\r\nis processed, the first clause has already had the wrong kind of\r\nreduction regions generated.\r\n\r\nThis is solved by toggling whether a variable should be reduced by\r\nreference per variable. In the above example, this allows only `array`\r\nto be reduced by ref.","shortMessageHtmlLink":"[flang][MLIR][OpenMP] make reduction by-ref toggled per variable (#92244"}},{"before":"c675a58edec6d1a876a0d0e7d261f74764855b38","after":"6c7ec6e1e6646fb334064bda6f301fdb52390d9b","ref":"refs/heads/main","pushedAt":"2024-05-16T14:26:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"MacDue","name":"Benjamin Maxwell","path":"/MacDue","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/11597044?s=80&v=4"},"commit":{"message":"[mlir][ArmSME] Remove empty line in test (NFC) (#92404)","shortMessageHtmlLink":"[mlir][ArmSME] Remove empty line in test (NFC) (#92404)"}},{"before":"93c02b7dc3bd07d3d62b56cb3299288901205f3a","after":"c675a58edec6d1a876a0d0e7d261f74764855b38","ref":"refs/heads/main","pushedAt":"2024-05-16T13:48:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"michaelmaitland","name":"Michael Maitland","path":"/michaelmaitland","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/6876996?s=80&v=4"},"commit":{"message":"[TableGen][SubtargetEmitter] Early exit from loop in FindWriteResources and FindReadAdvance (#92202)\n\nThis gives us a 30% speed improvement in our downstream.","shortMessageHtmlLink":"[TableGen][SubtargetEmitter] Early exit from loop in FindWriteResourcā€¦"}},{"before":"54e52aa5ebe68de122a3fe6064e0abef97f6b8e0","after":"93c02b7dc3bd07d3d62b56cb3299288901205f3a","ref":"refs/heads/main","pushedAt":"2024-05-16T13:47:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cjacek","name":"Jacek Caban","path":"/cjacek","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3763736?s=80&v=4"},"commit":{"message":"[CodeGen][ARM64EC] Use MCSymbolRefExpr::VK_None for function aliases. (#92100)","shortMessageHtmlLink":"[CodeGen][ARM64EC] Use MCSymbolRefExpr::VK_None for function aliases. (ā€¦"}},{"before":"4a5dffc67499640c71357d8f3f49edc97af5482f","after":"54e52aa5ebe68de122a3fe6064e0abef97f6b8e0","ref":"refs/heads/main","pushedAt":"2024-05-16T13:44:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"RKSimon","name":"Simon Pilgrim","path":"/RKSimon","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2175834?s=80&v=4"},"commit":{"message":"[X86] Reduce znver3/4 LoopMicroOpBufferSize to practical loop unrolling values (#91340)\n\nThe znver3/4 scheduler models have previously associated the LoopMicroOpBufferSize with the maximum size of their op caches, and when this led to quadratic complexity issues this were reduced to a value of 512 uops, based mainly on compilation time and not its effectiveness on runtime performance.\r\n\r\nFrom a runtime performance POV, a large LoopMicroOpBufferSize leads to a higher number of loop unrolls, meaning the cpu has to rely on the frontend decode rate (4 ins/cy max) for much longer to fill the op cache before looping begins and we make use of the faster op cache rate (8/9 ops/cy).\r\n\r\nThis patch proposes we instead cap the size of the LoopMicroOpBufferSize based off the maximum rate from the op cache (znver3 = 8op/cy, znver4 = 9op/cy) and the branch misprediction penalty from the opcache (~12cy) as a estimate of the useful number of ops we can unroll a loop by before mispredictions are likely to cause stalls. This isn't a perfect metric, but does try to be closer to the spirit of how we use LoopMicroOpBufferSize in the compiler vs the size of a similar naming buffer in the cpu.","shortMessageHtmlLink":"[X86] Reduce znver3/4 LoopMicroOpBufferSize to practical loop unrolliā€¦"}},{"before":"af57ad6536c7df19e6df7217d9d976067fdaf882","after":"4a5dffc67499640c71357d8f3f49edc97af5482f","ref":"refs/heads/main","pushedAt":"2024-05-16T13:21:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cjacek","name":"Jacek Caban","path":"/cjacek","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/3763736?s=80&v=4"},"commit":{"message":"[CodeGen][ARM64EC][NFC] Add ARM64EC alias symbols test. (#92100)","shortMessageHtmlLink":"[CodeGen][ARM64EC][NFC] Add ARM64EC alias symbols test. (#92100)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAES_Vx0wA","startCursor":null,"endCursor":null}},"title":"Activity Ā· llvm/llvm-project"}