#
b5d316bf |
| 29-May-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Rename getOrCreateSymbolData to registerSymbol and return void.
Another step in merging MCSymbol and MCSymbolData.
llvm-svn: 238607
|
#
e3b2acf2 |
| 29-May-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Pass MCSymbols to the helper functions in MCELF.h.
llvm-svn: 238596
|
#
b45fb36f |
| 29-May-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] Remove 2 unused variables in MipsTargetStreamer.cpp. NFC.
llvm-svn: 238554
|
#
bb9a71c1 |
| 26-May-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Replace getOrCreateSectionData with registerSection.
There is now no SectionData to be created.
llvm-svn: 238208
|
#
db0712f9 |
| 26-May-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Use std::bitset for SubtargetFeatures.
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were ve
Use std::bitset for SubtargetFeatures.
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were very close to hitting this bound, switching the features to use a bitset. No functional change.
The first several times this was committed (e.g. r229831, r233055), it caused several buildbot failures. Apparently the reason for most failures was both clang and gcc's inability to deal with large numbers (> 10K) of bitset constructor calls in tablegen-generated initializers of instruction info tables. This should now be fixed.
llvm-svn: 238192
show more ...
|
#
967d6a69 |
| 21-May-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Stop forwarding (get|set)Aligment from MCSectionData to MCSection.
llvm-svn: 237956
|
#
0709a7bd |
| 21-May-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Move alignment from MCSectionData to MCSection.
This starts merging MCSection and MCSectionData.
There are a few issues with the current split between MCSection and MCSectionData.
* It optimizes t
Move alignment from MCSectionData to MCSection.
This starts merging MCSection and MCSectionData.
There are a few issues with the current split between MCSection and MCSectionData.
* It optimizes the the not as important case. We want the production of .o files to be really fast, but the split puts the information used for .o emission in a separate data structure.
* The ELF/COFF/MachO hierarchy is not represented in MCSectionData, leading to some ad-hoc ways to represent the various flags.
* It makes it harder to remember where each item is.
The attached patch starts merging the two by moving the alignment from MCSectionData to MCSection.
Most of the patch is actually just dropping 'const', since MCSectionData is mutable, but MCSection was not.
llvm-svn: 237936
show more ...
|
#
6f482000 |
| 18-May-2015 |
Jim Grosbach <grosbach@apple.com> |
MC: Clean up method names in MCContext.
The naming was a mish-mash of old and new style. Update to be consistent with the new. NFC.
llvm-svn: 237594
|
Revision tags: llvmorg-3.6.1 |
|
#
e9119e41 |
| 13-May-2015 |
Jim Grosbach <grosbach@apple.com> |
MC: Modernize MCOperand API naming. NFC.
MCOperand::Create*() methods renamed to MCOperand::create*().
llvm-svn: 237275
|
#
c3434b39 |
| 13-May-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Reverting r237234, "Use std::bitset for SubtargetFeatures"
The buildbots are still not satisfied. MIPS and ARM are failing (even though at least MIPS was expected to pass).
llvm-svn: 237245
|
#
aba4a34e |
| 13-May-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Use std::bitset for SubtargetFeatures
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were ver
Use std::bitset for SubtargetFeatures
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were very close to hitting this bound, switching the features to use a bitset. No functional change.
The first two times this was committed (r229831, r233055), it caused several buildbot failures. At least some of the ARM and MIPS ones were due to gcc/binutils issues, and should now be fixed.
llvm-svn: 237234
show more ...
|
Revision tags: llvmorg-3.6.1-rc1 |
|
#
2cc44f50 |
| 16-Apr-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] [IAS] Preserve microMIPS label marking for objects when assigning.
Summary: Previously, this was only happening for functions, but because of .insn, objects can also be marked now.
Reviewers
[mips] [IAS] Preserve microMIPS label marking for objects when assigning.
Summary: Previously, this was only happening for functions, but because of .insn, objects can also be marked now.
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8007
llvm-svn: 235095
show more ...
|
#
9ca5096f |
| 16-Apr-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] [IAS] Add support for the .insn directive.
Summary: This assembler directive marks the current label as an instruction label in microMIPS and MIPS16.
This initial implementation works only f
[mips] [IAS] Add support for the .insn directive.
Summary: This assembler directive marks the current label as an instruction label in microMIPS and MIPS16.
This initial implementation works only for microMIPS.
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D8006
llvm-svn: 235084
show more ...
|
#
29704e7f |
| 24-Mar-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Revert "Use std::bitset for SubtargetFeatures"
This reverts commit r233055.
It still causes buildbot failures (gcc running out of memory on several platforms, and a self-host failure on arm), altho
Revert "Use std::bitset for SubtargetFeatures"
This reverts commit r233055.
It still causes buildbot failures (gcc running out of memory on several platforms, and a self-host failure on arm), although less than the previous time.
llvm-svn: 233068
show more ...
|
#
c99ce681 |
| 24-Mar-2015 |
Simon Atanasyan <simon@atanasyan.com> |
[mips] Simplify boolean expressions in Mips target with `clang-tidy`
No functional changes.
Patch by Richard Thomson.
Differential Revision: http://reviews.llvm.org/D8522
llvm-svn: 233065
|
#
774b441b |
| 24-Mar-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Use std::bitset for SubtargetFeatures
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were ver
Use std::bitset for SubtargetFeatures
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were very close to hitting this bound, switching the features to use a bitset. No functional change.
The first time this was committed (r229831), it caused several buildbot failures. At least some of the ARM ones were due to gcc/binutils issues, and should now be fixed.
Differential Revision: http://reviews.llvm.org/D8542
llvm-svn: 233055
show more ...
|
Revision tags: llvmorg-3.5.2, llvmorg-3.5.2-rc1 |
|
#
e95a4911 |
| 13-Mar-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] [IAS] Refactor MipsTargetStreamer::emitMipsAbiFlags(). NFC.
Summary: Make emitMipsAbiFlags a direct member of MipsTargetELFStreamer, as that's the only place where it's used, and remove the e
[mips] [IAS] Refactor MipsTargetStreamer::emitMipsAbiFlags(). NFC.
Summary: Make emitMipsAbiFlags a direct member of MipsTargetELFStreamer, as that's the only place where it's used, and remove the empty implementations from MipsTargetStreamer and MipsTargetAsmStreamer.
Reviewers: dsanders, rafael
Reviewed By: rafael
Subscribers: rafael, llvm-commits
Differential Revision: http://reviews.llvm.org/D8199
llvm-svn: 232161
show more ...
|
#
33866f14 |
| 10-Mar-2015 |
Eric Christopher <echristo@gmail.com> |
Remove an unused variable.
llvm-svn: 231730
|
#
4e0cf8e2 |
| 06-Mar-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] [IAS] Add missing constraints and improve testing for the .module directive.
Summary: None of the .set directives can be used before the .module directives. The .set mips0/pop/push were not t
[mips] [IAS] Add missing constraints and improve testing for the .module directive.
Summary: None of the .set directives can be used before the .module directives. The .set mips0/pop/push were not triggering this constraint. Also added testing for all the other implemented directives which are supposed to trigger this constraint.
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D7140
llvm-svn: 231465
show more ...
|
Revision tags: llvmorg-3.6.0 |
|
#
efd7a96d |
| 19-Feb-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Reverting r229831 due to multiple ARM/PPC/MIPS build-bot failures.
llvm-svn: 229841
|
#
ba5b04c7 |
| 19-Feb-2015 |
Michael Kuperstein <michael.m.kuperstein@intel.com> |
Use std::bitset for SubtargetFeatures
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were ver
Use std::bitset for SubtargetFeatures
Previously, subtarget features were a bitfield with the underlying type being uint64_t. Since several targets (X86 and ARM, in particular) have hit or were very close to hitting this bound, switching the features to use a bitset.
No functional change.
Differential Revision: http://reviews.llvm.org/D7065
llvm-svn: 229831
show more ...
|
Revision tags: llvmorg-3.6.0-rc4 |
|
#
1779314e |
| 18-Feb-2015 |
Daniel Sanders <daniel.sanders@imgtec.com> |
[mips] Add backend support for Mips32r[35] and Mips64r[35].
Summary: These ISA's didn't add any instructions so they are almost identical to Mips32r2 and Mips64r2. Even the ELF e_flags are the same,
[mips] Add backend support for Mips32r[35] and Mips64r[35].
Summary: These ISA's didn't add any instructions so they are almost identical to Mips32r2 and Mips64r2. Even the ELF e_flags are the same, However the ISA revision in .MIPS.abiflags is 3 or 5 respectively instead of 2.
Reviewers: vmedic
Reviewed By: vmedic
Subscribers: tomatabacu, llvm-commits, atanasyan
Differential Revision: http://reviews.llvm.org/D7381
llvm-svn: 229695
show more ...
|
#
8874eac5 |
| 18-Feb-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] [IAS] Fix using .cpsetup with local labels (PR22518).
Summary: Parse for an MCExpr instead of an Identifier and use the symbol for relocations, not just the symbol's name.
This fixes errors
[mips] [IAS] Fix using .cpsetup with local labels (PR22518).
Summary: Parse for an MCExpr instead of an Identifier and use the symbol for relocations, not just the symbol's name.
This fixes errors when using local labels in .cpsetup (PR22518).
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: seanbruno, emaste, llvm-commits
Differential Revision: http://reviews.llvm.org/D7697
llvm-svn: 229671
show more ...
|
#
16a74499 |
| 13-Feb-2015 |
Toma Tabacu <toma.tabacu@imgtec.com> |
[mips] Improve support for the .set at/noat assembler directives.
Summary: Made the following changes: Added calls to emitDirectiveSetNoAt() and emitDirectiveSetAt(). Added special emit function
[mips] Improve support for the .set at/noat assembler directives.
Summary: Made the following changes: Added calls to emitDirectiveSetNoAt() and emitDirectiveSetAt(). Added special emit function for .set at=$reg, emitDirectiveSetAtWithArg(unsigned RegNo). Improved parsing error checks for .set at. Refactored parser code for .set at. Improved testing of both directives. Improved code readability and comments.
Reviewers: dsanders
Reviewed By: dsanders
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D7176
llvm-svn: 229097
show more ...
|
Revision tags: llvmorg-3.6.0-rc3, llvmorg-3.6.0-rc2 |
|
#
ba31e27f |
| 29-Jan-2015 |
Rafael Espindola <rafael.espindola@gmail.com> |
Compute the ELF SectionKind from the flags.
Any code creating an MCSectionELF knows ELF and already provides the flags.
SectionKind is an abstraction used by common code that uses a plain MCSection
Compute the ELF SectionKind from the flags.
Any code creating an MCSectionELF knows ELF and already provides the flags.
SectionKind is an abstraction used by common code that uses a plain MCSection.
Use the flags to compute the SectionKind. This removes a lot of guessing and boilerplate from the MCSectionELF construction.
llvm-svn: 227476
show more ...
|