-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[ownership] Enable ownership lowering /after/ the diagnostic passes. #28042
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
[ownership] Enable ownership lowering /after/ the diagnostic passes. #28042
Conversation
@swift-ci test |
@swift-ci asan test |
@swift-ci test source compatibility |
Build failed |
Passed macOS testing. Lets see what happens with iphonesimulator. I am looking into the swiftpm and linux failure. |
I have a solution for the swiftpm issue. |
Build failed |
Hit some lldb issues. LLDB fix is here: swiftlang/llvm-project#114 Also the macOS tests passed the full test. |
Landed the lldb change (just needed to lower ownership). Curious if I get significantly further this time on the macOS test (ignoring the swiftpm failure that I am going to hit). |
@swift-ci test os x platform |
Build failed |
OS X failure was this: 15:55:44 :0: note: Cannot read '/Users/buildnode/jenkins/workspace/swift-PR-osx/branch-master/buildbot_incremental/swift-macosx-x86_64/./lib/swift/iphoneos/layouts-arm64.yaml'? I think that might mean a bad node? Going to try again. |
@swift-ci test os x platform |
Looked at the ASAN failure. Was a source kit error. Definitely not mine: 15:04:12 -- Everything else passed though. |
Build failed |
Ran the lldb test again with my failure. Failed again, but only in the ref count test: 18:04:16 lldb-Suite :: lang/swift/swift_reference_counting/TestSwiftReferenceCount.py The failure is since lldb is testing exact reference counts and after my changes the ref count is 4 instead of 3. |
#28208 should fix the swiftpm issue. I discovered some similar fixes I want to do on the load [copy] side, but the load_borrow fix there should take care of that. |
@swift-ci test |
I think I am going to hit an lldb test failure, but the swiftpm issue is fixed. |
@swift-ci please benchmark |
Build failed |
Linux hit the option set failure. I think that just needs a small test update. |
I am expecting an lldb test failure as well. |
But on the macOS side. I need to provide a separate PR to test with this that updates that lldb test. |
Performance: -O
Code size: -O
Performance: -Osize
Code size: -Osize
Performance: -Onone
Code size: -swiftlibsHow to read the dataThe tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.If you see any unexpected regressions, you should consider fixing the Noise: Sometimes the performance results (not code size!) contain false Hardware Overview
|
Build failed |
@swift-ci test source compatibility |
I am fixing another bug right now, but I am going to loop back on this in a bit with the lldb patch/linux fix. |
OS X failed on the lldb test as expected, but all of the normal tests passed. |
I sat down with Davide and un-hardcoded the check for the specific ref count of the object in the test and instead just made sure we can properly get output. The fix is here: swiftlang/llvm-project#294. I am able to land it before landing this so I don't need to do cross repo testing. |
@swift-ci test |
@swift-ci asan test |
1 similar comment
@swift-ci asan test |
@swift-ci test source compatibility |
1 similar comment
@swift-ci test source compatibility |
Build failed |
Build failed |
@swift-ci test windows platform |
3 similar comments
@swift-ci test windows platform |
@swift-ci test windows platform |
@swift-ci test windows platform |
@swift-ci asan test |
Got full greens using full tests.. Going to grab a little zzzs, then see if I can quickly fix the os log test and then smoke and merge. |
I talked with Ravi. I am going to commit that test disabled so I can land this and I am going to post a patch with the post-world fix that Ravi can review. |
… complete. I talked with Ravi (the maintainer) about this and he is cool. I am going to provide a patch that he can review to the oslog specific pass that also undisables the test. This test was passing last week when I originally tested it so that suggests the special optimization pass is pattern matching too specific of a pattern.
I also updated the last group of straggling tests.
Asan, source compat, full Mac/Linux testing, and windows too! I’m going to clean up the git history a little and then smoke test and merge. |
3178dc3
to
269762e
Compare
@swift-ci smoke test |
Good morning/evening/night, I was looking into the failures that appeared in https://ci-external.swift.org/job/oss-swift-RA-linux-ubuntu-16.04-android/4509/ (Android ARMv7) after the introduction of this patch. It seems that the change I can XFAIL this test, but I will not mind a ELI5 of what's going on to understand the problem better, and maybe find an actual solution. The two outputs (before and after the patch) are in https://gist.github.com/drodriguez/658c0e0818e1d89c03633150d9d858b1 /cc @harlanhaskins |
Text of the failure:
It looks like the deinit wasn't emitted, maybe that's a side effect of ownership visiting slightly differently? |
Anything marked |
The deinit was emitted, but it is emitted before the setter, but because the setter is checked before, the deinit is not found below the setter, and the test fails. But I imagine is something like you say, that the ownership being enabled or disabled changes the visiting order slightly… and only in ARMv7? (32 bits vs 64 bits?) (Also, my |
Ah, I see. That's...not very great. I should probably be passing -emit-sorted-sil...or using CHECK-DAG |
Let me check if that solves the problem. Thanks for the clue! |
I also updated the last group of straggling tests.