Implement Intel HLE and RTM intrinsics
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
从 Intel Intrinsic Guide 和 clang 的 rtmintrin.h 开始,比较四个 RTM intrinsic 及其 LLVM 映射。查看所引用的关于 xbegin 和 returns_twice 的 LLVM Bugzilla 讨论,然后定位 core::arch 实现和 Rust feature 白名单。当 RTM intrinsic 已通过 instruction tests 暴露,并且 rtm feature 被接受时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
@mtak- mentioned _xbegin recently, we should probably expose them all via core::arch.
The Intel RTM (Restricted Transactional Memory) intrinsics (Intel Intrinsic Guide, clang header, CPUID: RTM, EAX=7, ECX=0: Extended Features, EBX=11):
void _xabort (const unsigned int imm8)(assert_instr(xabort), `llvm.x86.xabort)unsigned int _xbegin (void)(assert_instr(xbegin), llvm.x86.xbegin, note: can return multiple times)void _xend (void)(assert_instr(xend), llvm.x86.xend)unsigned char _xtest (void)(assert_instr(xtest), llvm.x86.xtest)
We'd need to whitelist the rtm feature in rust-lang/rust as part of this.
I've asked on the LLVM bugzilla whether xbegin needs to be marked returns_twice: https://bugs.llvm.org/show_bug.cgi?id=41493, Craig Topper suggested on IRC to submit an LLVM patch to mark this intrinsic / clang intrinsic as returns_twice (cc @ctopper - hope I get the github id right), but @tnorthover mentioned that this might not be necessary or enough. We don't have to figure this out for the initial implementation, as @mtack- mentions, clang does not do this, but we should not forget about this issue.
- 主要语言
- Rust
- 星标
- 694
- 派生
- 341
- 平均合并
- 3 天 2 小时
- 30 天内合并 PR
- 14
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
rust-lang/stdarch 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 68/100
rust-lang/stdarch#2218 · 5 条评论 ·
维护者通常 1 天内回复
-
A-x86 P-high
难度 2/5 1-3 小时 新手友好度 68/100
rust-lang/stdarch#522 · 26 条评论 ·
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 64/100
rust-lang/stdarch#2216 · 1 条评论 ·
维护者通常 1 天内回复
-
Can non-temporal loads use the LLVM intrinsic instead?可能已有人在做 @ruriww 于 102 天前认领。 未关闭
难度 3/5 1-2 天 新手友好度 48/100
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 55/100
rust-lang/stdarch#2154 · 1 条评论 ·
维护者通常 1 天内回复
查看 rust-lang/stdarch 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 64/100
维护者通常 3 天内回复
-
Zellij doesn't validate hex colors correctly and crashes可能已有人在做 @ymcx 今天认领。 未关闭suspected bug
难度 2/5 1-3 小时 新手友好度 76/100
zellij-org/zellij#5732 ·
维护者通常 1 天内回复
-
bug rust
难度 2/5 1-3 小时 新手友好度 78/100
jonathanong/no-mistakes#2267 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 69/100
rust-embedded/cortex-m#702 · 1 条评论 ·
-
Make major, minor, and makedev safe on solarish targets可能已有人在做 @xtqqczze 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 78/100
维护者通常 1 天内回复