|  | Commit message (Collapse) | Author | Age | Files | Lines | 
|---|
| | 
| 
| 
| 
| 
| 
| 
| | instructions.
- However, it does support dmb, dsb, isb, mrs, and msr.
rdar://11331541
llvm-svn: 155685 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | the feature set of v7a. This comes about if the user specifies something like
-arch armv7 -mcpu=cortex-m3. We shouldn't be generating instructions such as
uxtab in this case.
rdar://11318438
llvm-svn: 155601 | 
| | 
| 
| 
| 
| 
| | getInstructionName and the static data it contains since the same tables are already in MCInstrInfo.
llvm-svn: 153860 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | The ARM code generator makes aggressive assumptions about the encodings
being selected for branches which MCRelaxAll invalidates.
rdar://11006355
llvm-svn: 152268 | 
| | 
| 
| 
| 
| 
| 
| | Used to allow context sensitive printing of super-register or sub-register
references.
llvm-svn: 152043 | 
| | 
| 
| 
| | llvm-svn: 150918 | 
| | 
| 
| 
| 
| 
| | MSP430, PPC, PTX, Sparc, X86, XCore.
llvm-svn: 150878 | 
| | 
| 
| 
| 
| 
| 
| | Now that the clang driver passes the CPU and feature information to
the backend when processing assembly files (150273), this isn't necessary.
llvm-svn: 150274 | 
| | 
| 
| 
| 
| 
| | rdar://10838899
llvm-svn: 150222 | 
| | 
| 
| 
| 
| 
| 
| | and code model. This eliminates the need to pass OptLevel flag all over the
place and makes it possible for any codegen pass to use this information.
llvm-svn: 144788 | 
| | 
| 
| 
| | llvm-svn: 142338 | 
| | 
| 
| 
| 
| 
| 
| | This matches clang, so default options in llc and friends are now closer to
clang's defaults.
llvm-svn: 140863 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | forgotten to commit.
Build on previous patches to successfully distinguish between an M-series and A/R-series MSR and MRS instruction. These take different mask names and have a *slightly* different opcode format.
Add decoder and disassembler tests.
Improvement on the previous patch - successfully distinguish between valid v6m and v7m masks (one is a subset of the other). The patch had to be edited slightly to apply to ToT.
llvm-svn: 140696 | 
| | 
| 
| 
| | llvm-svn: 139753 | 
| | 
| 
| 
| 
| 
| | handling to llvm-mc. Reviewed by Owen Anderson.
llvm-svn: 139237 | 
| | 
| 
| 
| 
| 
| 
| | instructions are more aligned than the CPU requires, and adds some additional
directives, to follow in future patches. Patch by David Meyer!
llvm-svn: 139125 | 
| | 
| 
| 
| | llvm-svn: 139122 | 
| | 
| 
| 
| 
| 
| | These are strictly utilities for registering targets and components.
llvm-svn: 138450 | 
| | 
| 
| 
| 
| 
| | from MC.
llvm-svn: 138367 | 
| | 
| 
| 
| 
| 
| | instruction so target specific analysis isn't needed anymore.
llvm-svn: 137151 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | of MCInstrDescs functions.
- Add overrides for ARM.
- Teach llvm-objdump to use this instead of plain MCInstrDesc.
llvm-svn: 137059 | 
| | 
| 
| 
| 
| 
| | createMCObjectStreamer.
llvm-svn: 136031 | 
| | 
| 
| 
| 
| 
| | createMCAsmBackend.
llvm-svn: 136010 | 
| | 
| 
| 
| | llvm-svn: 135974 | 
| | 
| 
| 
| | llvm-svn: 135825 | 
| | 
| 
| 
| 
| 
| | InitializeX86MCInstrInfo, etc. are combined into InitializeX86TargetMC.
llvm-svn: 135812 | 
| | 
| 
| 
| 
| 
| 
| 
| | - Introduce JITDefault code model. This tells targets to set different default
  code model for JIT. This eliminates the ugly hack in TargetMachine where
  code model is changed after construction.
llvm-svn: 135580 | 
| | 
| 
| 
| 
| 
| 
| 
| | TargetLoweringObjectFileImpl down to MCObjectFileInfo.
TargetAsmInfo is done to one last method. It's *almost* gone!
llvm-svn: 135569 | 
| | 
| 
| 
| 
| 
| 
| | (including compilation, assembly). Move relocation model Reloc::Model from
TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine.
llvm-svn: 135468 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | to MCRegisterInfo. Also initialize the mapping at construction time.
This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step
towards fixing the layering violation.
llvm-svn: 135424 | 
| | 
| 
| 
| 
| 
| 
| | solution but it is a small step towards removing the horror that is
TargetAsmInfo.
llvm-svn: 135237 | 
| | 
| 
| 
| 
| 
| | MCTargetDesc to prepare for next round of changes.
llvm-svn: 135219 | 
| | 
| 
| 
| 
| 
| | registeration and creation code into XXXMCDesc libraries.
llvm-svn: 135184 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| | and MCSubtargetInfo.
- Added methods to update subtarget features (used when targets automatically
  detect subtarget features or switch modes).
- Teach X86Subtarget to update MCSubtargetInfo features bits since the
  MCSubtargetInfo layer can be shared with other modules.
- These fixes .code 16 / .code 32 support since mode switch is updated in
  MCSubtargetInfo so MC code emitter can do the right thing.
llvm-svn: 134884 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| | CPU, and feature string. Parsing some asm directives can change
subtarget state (e.g. .code 16) and it must be reflected in other
modules (e.g. MCCodeEmitter). That is, the MCSubtargetInfo instance
must be shared.
llvm-svn: 134795 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| | - Each target asm parser now creates its own MCSubtatgetInfo (if needed).
- Changed AssemblerPredicate to take subtarget features which tablegen uses
  to generate asm matcher subtarget feature queries. e.g.
  "ModeThumb,FeatureThumb2" is translated to
  "(Bits & ModeThumb) != 0 && (Bits & FeatureThumb2) != 0".
llvm-svn: 134678 | 
| | 
| 
| 
| | llvm-svn: 134626 | 
| | 
| 
| 
| | llvm-svn: 134608 | 
| | 
| 
| 
| | llvm-svn: 134606 | 
| | 
| 
| 
| 
| 
| | them down to MC layer. Also fix tests.
llvm-svn: 134590 | 
| | 
| 
| 
| 
| 
| | ARM subtarget info available to MC.
llvm-svn: 134569 | 
|  | llvm-svn: 134547 |