Page MenuHomePhabricator

[CLANG][BPF] permit any argument type for __builtin_preserve_access_index()
ClosedPublic

Authored by yonghong-song on Sat, Sep 21, 10:50 AM.

Details

Summary

Commit c15aa241f821 ("[CLANG][BPF] change __builtin_preserve_access_index()
signature") changed the builtin function signature to

PointerT __builtin_preserve_access_index(PointerT ptr)

with a pointer type as the argument/return type, where argument and
return types must be the same.

There is really no reason for this constraint. The builtin just
presented a code region so that IR builtins

__builtin_{array, struct, union}_preserve_access_index

can be applied.

This patch removed the pointer type restriction to permit any
argument type as long as it is permitted by the compiler.

Diff Detail

Repository
rL LLVM

Event Timeline

yonghong-song created this revision.Sat, Sep 21, 10:50 AM
Herald added a project: Restricted Project. · View Herald TranscriptSat, Sep 21, 10:50 AM
ast accepted this revision.Sun, Sep 22, 10:09 AM

I tested few different examples. Generated code and relocations look good.

This revision is now accepted and ready to land.Sun, Sep 22, 10:09 AM
This revision was automatically updated to reflect the committed changes.
Herald added a project: Restricted Project. · View Herald TranscriptSun, Sep 22, 10:33 AM