1 //===-- llvm/MC/MCAsmInfoELF.h - ELF Asm info -------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #ifndef LLVM_MC_MCASMINFOELF_H 11 #define LLVM_MC_MCASMINFOELF_H 12 13 #include "llvm/MC/MCAsmInfo.h" 14 15 namespace llvm { 16 class MCAsmInfoELF : public MCAsmInfo { 17 virtual void anchor(); 18 MCSection *getNonexecutableStackSection(MCContext &Ctx) const final; 19 20 protected: 21 /// Targets which have non-executable stacks by default can set this to false 22 /// to disable the special section which requests a non-executable stack. 23 bool UsesNonexecutableStackSection; 24 25 MCAsmInfoELF(); 26 }; 27 } 28 29 #endif 30