This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Compiler support for erasure of sensitive data


On Mon, Feb 29, 2016 at 10:14 PM, Marcos Diaz
<marcos.diaz@tallertechnologies.com> wrote:
> Hi, we are facing the same issue. This bugzilla was opened:
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69976
>
> We were thinking on making a function attribute that ensures that non necessary registers, or stack frames used by the function will be correctly cleared before returning.
> We think in implementing for x86_64 as a first work.
> For this we are trying to modify the epilogue generation. Here we should have the information of which registers this function used, and the size of the stack frame to clean. The downside of this is that will be architecture dependent.
> Do you think this is a good idea? Do you suggest something else?

I think you can't avoid doing architecture specific changes here.
Note that on x86_64 you probably want to force
-maccumulate-outgoing-args
to avoid the use of push/pop and have the stack frame freeing fully in
the epilogue.

Richard.

> Thanks.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]