[llvm-dev] Missed strlen optimizations
Dávid Bolvanský via llvm-dev
llvm-dev at lists.llvm.org
Fri Apr 20 10:19:52 PDT 2018
Use *last = nullptr;
for (Use &U : Src->uses())
last = &U;
last->getUser()->dump();
Or any better solution?
2018-04-20 19:19 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>:
> Is:
>
>
> 2018-04-20 18:07 GMT+02:00 Dávid Bolvanský <david.bolvansky at gmail.com>:
>
>> Hello,
>>
>> Code: https://godbolt.org/g/EG4Wi6
>>
>> unsigned fff3(void) {
>> char buf[10] = "";
>> return strlen(buf);
>> }
>>
>> Since we are memset-ing before strlen call, we could replace strlen with
>> just 0.
>>
>> Has LLVM any API to get "last instruction before strlen" which modifies
>> strlen argument "buf"? So we can check "yes, it is memset there, replace
>> strlen with zero" ?
>>
>>
>> Thanks
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180420/43e98be2/attachment-0001.html>
More information about the llvm-dev
mailing list