[PATCH] Add an option to allow JumpInstrTables to set unnamed_addr and jumptable on all address-taken functions

Nick Lewycky nicholas at mxc.ca
Wed Jun 18 00:00:52 PDT 2014


Tom Roeder wrote:
> This small patch adds a new command flag -jump-table-all and an associated TargetOptions field JumpTableAll, and it modifies JumpInstrTables to add unnamed_addr and jumptable to all address-taken functions if the flag is set.
>
> This is important for applications like my implementation of control-flow integrity, which want to operate over all address-taken functions and not just the ones that happened to have been marked jumptable.

Why aren't all functions being marked jumptable when building with CFI?

> http://reviews.llvm.org/D4128
>
> Files:
>    include/llvm/CodeGen/CommandFlags.h
>    include/llvm/CodeGen/JumpInstrTables.h
>    include/llvm/Target/TargetOptions.h
>    lib/CodeGen/JumpInstrTables.cpp
>    lib/CodeGen/LLVMTargetMachine.cpp
>    test/CodeGen/X86/jump_table_all.ll
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits




More information about the llvm-commits mailing list