[Driver] Properly handle -entry for X86 Linux.
llvm-svn: 169718
This commit is contained in:
		
							parent
							
								
									3825760550
								
							
						
					
					
						commit
						99b99d26bb
					
				| 
						 | 
				
			
			@ -118,7 +118,8 @@ public:
 | 
			
		|||
    if (llvm::opt::Arg *A = _inputArgs->getLastArg(ld::OPT_entry))
 | 
			
		||||
      newArgs->AddJoinedArg(A, _core.getOption(core::OPT_entry), A->getValue());
 | 
			
		||||
    else
 | 
			
		||||
      newArgs->AddJoinedArg(nullptr, _core.getOption(core::OPT_entry), "start");
 | 
			
		||||
      newArgs->AddJoinedArg(nullptr, _core.getOption(core::OPT_entry),
 | 
			
		||||
                            "_start");
 | 
			
		||||
 | 
			
		||||
    if (llvm::opt::Arg *A = _inputArgs->getLastArg(ld::OPT_output))
 | 
			
		||||
      newArgs->AddJoinedArg(A, _core.getOption(core::OPT_output),
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,7 +26,7 @@ using namespace lld;
 | 
			
		|||
 | 
			
		||||
class X86LinuxTarget final : public Target {
 | 
			
		||||
public:
 | 
			
		||||
  X86LinuxTarget(const LinkerOptions &lo) : Target(lo), _woe() {
 | 
			
		||||
  X86LinuxTarget(const LinkerOptions &lo) : Target(lo), _woe(lo._entrySymbol) {
 | 
			
		||||
    _readerELF.reset(createReaderELF(_roe, _roa));
 | 
			
		||||
    _readerYAML.reset(createReaderYAML(_roy));
 | 
			
		||||
    _writer.reset(createWriterELF(_woe));
 | 
			
		||||
| 
						 | 
				
			
			@ -63,12 +63,12 @@ private:
 | 
			
		|||
  } _roy;
 | 
			
		||||
 | 
			
		||||
  struct WOpts : lld::WriterOptionsELF {
 | 
			
		||||
    WOpts() {
 | 
			
		||||
    WOpts(StringRef entry) {
 | 
			
		||||
      _endianness = llvm::support::little;
 | 
			
		||||
      _is64Bit = false;
 | 
			
		||||
      _type = llvm::ELF::ET_EXEC;
 | 
			
		||||
      _machine = llvm::ELF::EM_386;
 | 
			
		||||
      _entryPoint = "_start";
 | 
			
		||||
      _entryPoint = entry;
 | 
			
		||||
    }
 | 
			
		||||
  } _woe;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue