@@ -128,8 +128,8 @@ class ELFLinkingContext : public LinkingContext {
128
128
129
129
// / \brief The dynamic linker path set by the --dynamic-linker option
130
130
StringRef getInterpreter () const {
131
- if (_dynamicLinkerArg )
132
- return _dynamicLinkerPath;
131
+ if (_dynamicLinkerPath. hasValue () )
132
+ return _dynamicLinkerPath. getValue () ;
133
133
return getDefaultInterpreter ();
134
134
}
135
135
@@ -166,10 +166,7 @@ class ELFLinkingContext : public LinkingContext {
166
166
void finalizeInputFiles () override ;
167
167
168
168
// / \brief Set the dynamic linker path
169
- void setInterpreter (StringRef dynamicLinker) {
170
- _dynamicLinkerArg = true ;
171
- _dynamicLinkerPath = dynamicLinker;
172
- }
169
+ void setInterpreter (StringRef s) { _dynamicLinkerPath = s; }
173
170
174
171
// / \brief Set NMAGIC output kind when the linker specifies --nmagic
175
172
// / or -n in the command line
@@ -311,7 +308,7 @@ class ELFLinkingContext : public LinkingContext {
311
308
OutputMagic _outputMagic;
312
309
StringRefVector _inputSearchPaths;
313
310
std::unique_ptr<Writer> _writer;
314
- StringRef _dynamicLinkerPath;
311
+ llvm::Optional< StringRef> _dynamicLinkerPath;
315
312
StringRef _initFunction = " _init" ;
316
313
StringRef _finiFunction = " _fini" ;
317
314
StringRef _sysrootPath = " " ;
0 commit comments