OSDN Git Service

[MCContext] Don't use getenv inside class constructor
authorIgor Laevsky <igmyrj@gmail.com>
Fri, 17 Jun 2016 15:19:41 +0000 (15:19 +0000)
committerIgor Laevsky <igmyrj@gmail.com>
Fri, 17 Jun 2016 15:19:41 +0000 (15:19 +0000)
Differential Revision: http://reviews.llvm.org/D21471

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@273005 91177308-0d34-0410-b5e6-96231b3b80d8

lib/MC/MCContext.cpp

index 67463e5..f48ab2f 100644 (file)
@@ -25,6 +25,7 @@
 #include "llvm/MC/MCSymbolELF.h"
 #include "llvm/MC/MCSymbolMachO.h"
 #include "llvm/Support/COFF.h"
+#include "llvm/Support/CommandLine.h"
 #include "llvm/Support/ELF.h"
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/MemoryBuffer.h"
 
 using namespace llvm;
 
+static cl::opt<char*>
+AsSecureLogFileName("as-secure-log-file-name",
+        cl::desc("As secure log file name (initialized from "
+                 "AS_SECURE_LOG_FILE env variable)"),
+        cl::init(getenv("AS_SECURE_LOG_FILE")), cl::Hidden);
+
+
 MCContext::MCContext(const MCAsmInfo *mai, const MCRegisterInfo *mri,
                      const MCObjectFileInfo *mofi, const SourceMgr *mgr,
                      bool DoAutoReset)
@@ -42,7 +50,7 @@ MCContext::MCContext(const MCAsmInfo *mai, const MCRegisterInfo *mri,
       GenDwarfForAssembly(false), GenDwarfFileNumber(0), DwarfVersion(4),
       AllowTemporaryLabels(true), DwarfCompileUnitID(0),
       AutoReset(DoAutoReset), HadError(false) {
-  SecureLogFile = getenv("AS_SECURE_LOG_FILE");
+  SecureLogFile = AsSecureLogFileName;
   SecureLog = nullptr;
   SecureLogUsed = false;