swiftlang/swift
[SR-6889] [IRGen Opportunity] Use argmemonly for runtime functions
开放
#49,438 创建于 2018年2月1日
compilergood first issueimprovement
仓库指标
- 星标
- (69,989 个星标)
- PR 合并指标
- (平均合并 8天 17小时) (30 天内合并 510 个 PR)
描述
| Previous ID | SR-6889 |
| Radar | None |
| Original Reporter | @aschwaighofer |
| Type | Improvement |
| Votes | 0 |
| Component/s | Compiler |
| Labels | Improvement, StarterBug |
| Assignee | None |
| Priority | Medium |
md5: 050d922fc6f6b8f37d1f70d51229bf7b
Issue Description:
It should be possible to mark some of our runtime functions with argmemonly readonly as they receive their type arguments indirectly via an array of type arguments.
I tried this in https://github.com/apple/swift/pull/14310 but tests failed. I did not have time to investigate why.
I mentioned that if that following situation in some form or another this annotation is not legal:
Type *args[5];
pointer->field = // inlined initialization
arg[1] = pointer
argmemonly(args)
However, we believe that this situation should? not arise. It might be worth investigating the failures.