History log of /llvm-project/lld/ELF/Arch/MipsArchTree.cpp (Results 26 – 36 of 36)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-6.0.1, llvmorg-6.0.1-rc3, llvmorg-6.0.1-rc2, llvmorg-6.0.1-rc1, llvmorg-5.0.2, llvmorg-5.0.2-rc2, llvmorg-5.0.2-rc1, llvmorg-6.0.0, llvmorg-6.0.0-rc3, llvmorg-6.0.0-rc2, llvmorg-6.0.0-rc1
# 280252c6 07-Dec-2017 Alexander Richardson <arichardson.kde@gmail.com>

[ELF][mips] Print the full file path for files with incompatible ISA

Summary:
I also changed the message to print both the ISA and the the architecture
name for incompatible files. Previously it wou

[ELF][mips] Print the full file path for files with incompatible ISA

Summary:
I also changed the message to print both the ISA and the the architecture
name for incompatible files. Previously it would be quite hard to find the
actual path of the incompatible object files in projects that have many
object files with the same name in different directories.

Reviewers: atanasyan, ruiu

Reviewed By: atanasyan

Subscribers: emaste, sdardis, llvm-commits

Differential Revision: https://reviews.llvm.org/D40958

llvm-svn: 320056

show more ...


Revision tags: llvmorg-5.0.1, llvmorg-5.0.1-rc3, llvmorg-5.0.1-rc2
# cfa8aa7e 13-Nov-2017 Simon Atanasyan <simon@atanasyan.com>

[MIPS] Set STO_MIPS_MICROMIPS flag and less-significant bit for microMIPS symbols

microMIPS symbols including microMIPS PLT records created for regular
symbols needs to be marked by STO_MIPS_MICROMI

[MIPS] Set STO_MIPS_MICROMIPS flag and less-significant bit for microMIPS symbols

microMIPS symbols including microMIPS PLT records created for regular
symbols needs to be marked by STO_MIPS_MICROMIPS flag in a symbol table.
Additionally microMIPS entries in a dynamic symbol table should have
configured less-significant bit. That allows to escape teaching a
dynamic linker about microMIPS symbols.

llvm-svn: 318097

show more ...


Revision tags: llvmorg-5.0.1-rc1
# b8a59c8a 25-Oct-2017 Bob Haarman <llvm@inglorion.net>

[lld] unified COFF and ELF error handling on new Common/ErrorHandler

Summary:
The COFF linker and the ELF linker have long had similar but separate
Error.h and Error.cpp files to implement error han

[lld] unified COFF and ELF error handling on new Common/ErrorHandler

Summary:
The COFF linker and the ELF linker have long had similar but separate
Error.h and Error.cpp files to implement error handling. This change
introduces new error handling code in Common/ErrorHandler.h, changes the
COFF and ELF linkers to use it, and removes the old, separate
implementations.

Reviewers: ruiu

Reviewed By: ruiu

Subscribers: smeenai, jyknight, emaste, sdardis, nemanjai, nhaehnle, mgorny, javed.absar, kbarton, fedor.sergeev, llvm-commits

Differential Revision: https://reviews.llvm.org/D39259

llvm-svn: 316624

show more ...


# e7f1734f 24-Oct-2017 Konstantin Zhuravlyov <kzhuravl_dev@outlook.com>

LLD/ELF: Allow targets to set e_flags

Differential Revision: https://reviews.llvm.org/D39139

llvm-svn: 316460


# f8db4536 03-Oct-2017 Simon Atanasyan <simon@atanasyan.com>

[MIPS] Generate thunks for microMIPS code

If symbol has the STO_MIPS_MICROMIPS flag and requires a thunk to perform
call PIC from non-PIC functions, we need to generate a thunk with microMIPS
code.

[MIPS] Generate thunks for microMIPS code

If symbol has the STO_MIPS_MICROMIPS flag and requires a thunk to perform
call PIC from non-PIC functions, we need to generate a thunk with microMIPS
code.

llvm-svn: 314797

show more ...


# 649e4d32 02-Oct-2017 Simon Atanasyan <simon@atanasyan.com>

[MIPS] Fix PLT entries generation in case of linking regular and microMIPS code

Currently LLD calls the `isMicroMips` routine to determine type of PLT entries
needs to be generated: regular or micro

[MIPS] Fix PLT entries generation in case of linking regular and microMIPS code

Currently LLD calls the `isMicroMips` routine to determine type of PLT entries
needs to be generated: regular or microMIPS. This routine checks ELF
header flags in the `FirstObj` to retrieve type of linked object files.
So if the first file does not contain microMIPS code, LLD will generate
PLT entries with regular (non-microMIPS) code only.

Ideally, if a PLT entry is referenced by microMIPS code only this entry
should contain microMIPS code, if a PLT entry is referenced by regular
code this entry should contain regular code. In a "mixed" case the PLT
entry can be either microMIPS or regular, but each "cross-mode-call" has
additional cost.

It's rather difficult to implement this ideal solution. But we can
assume that if there is an input object file with microMIPS code, the
most part of the code is microMIPS too. So we need to deduce type of PLT
entries based on finally calculated ELF header flags and do not check
only the first input object file.

This change implements this.
- The `getMipsEFlags` renamed to the `calcMipsEFlags`. The function
called from the `LinkerDriver::link`. Result is stored in
the Configuration::MipsEFlags field.
- The `isMicroMips` and `isMipsR6` routines access the `MipsEFlags`
field to get and check calculated ELF flags.
- New types of PLT records created when necessary.

Differential revision: https://reviews.llvm.org/D37747

llvm-svn: 314675

show more ...


# 696a7f9a 19-Sep-2017 George Rimar <grimar@accesssoftek.com>

[ELF] - Introduce std::vector<InputFile *> global arrays.

This patch removes lot of static Instances arrays from different input file
classes and introduces global arrays for access instead. Simila

[ELF] - Introduce std::vector<InputFile *> global arrays.

This patch removes lot of static Instances arrays from different input file
classes and introduces global arrays for access instead. Similar to arrays we
have for InputSections/OutputSectionCommands.

It allows to iterate over input files in a non-templated code.

Differential revision: https://reviews.llvm.org/D35987

llvm-svn: 313619

show more ...


Revision tags: llvmorg-5.0.0, llvmorg-5.0.0-rc5, llvmorg-5.0.0-rc4, llvmorg-5.0.0-rc3, llvmorg-5.0.0-rc2
# 709fb2bb 26-Jul-2017 Rui Ueyama <ruiu@google.com>

Rename ObjectFile -> ObjFile.

Rename it because it was too easy to conflict with llvm::object::ObjectFile
which broke buildbots several times.

llvm-svn: 309199


Revision tags: llvmorg-5.0.0-rc1
# 244ef981 26-Jul-2017 Rafael Espindola <rafael.espindola@gmail.com>

Detemplate SymbolTable.

NFC, just makes it easier to access from non templated code.

llvm-svn: 309152


# 67c60727 18-Jul-2017 George Rimar <grimar@accesssoftek.com>

[ELF] - Apply clang-format. NFC.

llvm-svn: 308297


# f3e3629f 19-Jun-2017 Konstantin Zhuravlyov <kzhuravl_dev@outlook.com>

LLD: Move ELF/Mips.cpp to ELF/Arch/MipsArchTree.cpp

Differential Revision: https://reviews.llvm.org/D34358

llvm-svn: 305742


12