From 0cb2a45cceaefb48ec7efb902c453aaae4e24cb2 Mon Sep 17 00:00:00 2001 From: Anton Korobeynikov Date: Sat, 3 Dec 2011 23:49:37 +0000 Subject: Emit the ctors in the proper order on ARM/EABI. Maybe some targets should use this as well. Patch by Evgeniy Stepanov! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@145781 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/MC/MCObjectFileInfo.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'lib/MC/MCObjectFileInfo.cpp') diff --git a/lib/MC/MCObjectFileInfo.cpp b/lib/MC/MCObjectFileInfo.cpp index 7d235412b5..32ba92424b 100644 --- a/lib/MC/MCObjectFileInfo.cpp +++ b/lib/MC/MCObjectFileInfo.cpp @@ -31,6 +31,8 @@ void MCObjectFileInfo::InitMachOMCObjectFileInfo(Triple T) { if (T.isMacOSX() && T.isMacOSXVersionLT(10, 5)) CommDirectiveSupportsAlignment = false; + StructorOutputOrder = Structors::PriorityOrder; + TextSection // .text = Ctx->getMachOSection("__TEXT", "__text", MCSectionMachO::S_ATTR_PURE_INSTRUCTIONS, @@ -258,6 +260,8 @@ void MCObjectFileInfo::InitELFMCObjectFileInfo(Triple T) { } } + StructorOutputOrder = Structors::ReversePriorityOrder; + // ELF BSSSection = Ctx->getELFSection(".bss", ELF::SHT_NOBITS, @@ -385,6 +389,8 @@ void MCObjectFileInfo::InitELFMCObjectFileInfo(Triple T) { void MCObjectFileInfo::InitCOFFMCObjectFileInfo(Triple T) { // COFF + StructorOutputOrder = Structors::ReversePriorityOrder; + TextSection = Ctx->getCOFFSection(".text", COFF::IMAGE_SCN_CNT_CODE | -- cgit v1.2.3-18-g5258