mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-26 12:20:42 +00:00
Implement stack protectors as function attributes: "ssp" and "sspreq".
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59202 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -26,16 +26,6 @@ namespace llvm {
|
||||
class TargetLowering;
|
||||
class RegisterCoalescer;
|
||||
|
||||
/// StackProtectorLevel - An enumeration for when to determin when to turn
|
||||
/// stack smashing protection (SSP) on.
|
||||
namespace SSP {
|
||||
enum StackProtectorLevel {
|
||||
OFF, // Stack protectors are off.
|
||||
SOME, // Stack protectors on only for functions that require them.
|
||||
ALL // Stack protectors on for all functions.
|
||||
};
|
||||
} // end SSP namespace
|
||||
|
||||
/// createUnreachableBlockEliminationPass - The LLVM code generator does not
|
||||
/// work well with unreachable basic blocks (what live ranges make sense for a
|
||||
/// block that cannot be reached?). As such, a code generator should either
|
||||
@@ -204,8 +194,7 @@ namespace llvm {
|
||||
FunctionPass *createStackSlotColoringPass();
|
||||
|
||||
/// createStackProtectorPass - This pass adds stack protectors to functions.
|
||||
FunctionPass *createStackProtectorPass(SSP::StackProtectorLevel lvl,
|
||||
const TargetLowering *tli);
|
||||
FunctionPass *createStackProtectorPass(const TargetLowering *tli);
|
||||
|
||||
} // End llvm namespace
|
||||
|
||||
|
||||
Reference in New Issue
Block a user