首页
社区
课程
招聘
[未解决,已结帖] [求助]ollvm中的mov / call 指令替换 500.00雪花
发表于: 2020-1-9 18:57 2312

[未解决,已结帖] [求助]ollvm中的mov / call 指令替换 500.00雪花

2020-1-9 18:57
2312
replaceAllUsesWith 只对BinaryOperator有效?
那么 mov / call 如何替换.
想要的效果是,mov rax,123(常数)-->mov rax,124 sub rax,1;call 123 -->mov rax,123,call rax;
StoreInst 跟 CallInst 的 replaceAllUsesWith 并没有效果.


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 7498
活跃值: (5327)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
懂的给个思路就行了
2020-1-13 14:05
0
雪    币: 78
活跃值: (1454)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
3
replaceAllUsesWith只是替换引用,并不会删除掉,要删除还要用eraseFromParent,没有效果只能说明姿势不对。
2020-1-13 14:22
0
雪    币: 7498
活跃值: (5327)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
淡淡的荧光 replaceAllUsesWith只是替换引用,并不会删除掉,要删除还要用eraseFromParent,没有效果只能说明姿势不对。
新建的指令打印出来确实没错,但是replaceAllUsesWith替换不进去.
2020-1-18 18:45
0
雪    币: 7498
活跃值: (5327)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
已解决,不能在 iterator 循环里面修改.
2020-2-18 11:49
0
雪    币: 7498
活跃值: (5327)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
lononan 已解决,不能在 iterator 循环里面修改.
不能在 iterator 循环里面修改 StoreInst指令 , 增加修改指令的方式就很多种了 ,insertXXX ,CreateXXX ,ReplaceInstWithInst,IRBuilder<>都行.
问一句,像这种没人回答,要自己解决的钱,要给谁啊?自己建一个小号收钱?
2020-2-19 23:47
0
游客
登录 | 注册 方可回帖
返回
//