| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 135059
|
|
|
|
|
|
| |
another use of sqrt. rdar://9763193
llvm-svn: 135058
|
|
|
|
| |
llvm-svn: 134920
|
|
|
|
|
|
|
|
|
|
|
|
| |
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: 134525
|
|
|
|
|
|
|
|
|
|
| |
be the first encoded as the first feature. It then uses the CPU name to look up
features / scheduling itineray even though clients know full well the CPU name
being used to query these properties.
The fix is to just have the clients explictly pass the CPU name!
llvm-svn: 134127
|
|
|
|
|
|
| |
MCInstrItineraries) into MC.
llvm-svn: 134049
|
|
|
|
| |
llvm-svn: 133292
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The LSDA is a bit difficult for the non-initiated to read. Even with comments,
it's not always clear what's going on. This wraps the ASM streamer in a class
that retains the LSDA and then emits a human-readable description of what's
going on in it.
So instead of having to make sense of:
Lexception1:
.byte 255
.byte 155
.byte 168
.space 1
.byte 3
.byte 26
Lset0 = Ltmp7-Leh_func_begin1
.long Lset0
Lset1 = Ltmp812-Ltmp7
.long Lset1
Lset2 = Ltmp913-Leh_func_begin1
.long Lset2
.byte 3
Lset3 = Ltmp812-Leh_func_begin1
.long Lset3
Lset4 = Leh_func_end1-Ltmp812
.long Lset4
.long 0
.byte 0
.byte 1
.byte 0
.byte 2
.byte 125
.long __ZTIi@GOTPCREL+4
.long __ZTIPKc@GOTPCREL+4
you can read this instead:
## Exception Handling Table: Lexception1
## @LPStart Encoding: omit
## @TType Encoding: indirect pcrel sdata4
## @TType Base: 40 bytes
## @CallSite Encoding: udata4
## @Action Table Size: 26 bytes
## Action 1:
## A throw between Ltmp7 and Ltmp812 jumps to Ltmp913 on an exception.
## For type(s): __ZTIi@GOTPCREL+4 __ZTIPKc@GOTPCREL+4
## Action 2:
## A throw between Ltmp812 and Leh_func_end1 does not have a landing pad.
llvm-svn: 133286
|
|
|
|
| |
llvm-svn: 131094
|
|
|
|
|
|
|
| |
the final assembly. It is the same technique used when targeting
assemblers that don't support .loc.
llvm-svn: 130587
|
|
|
|
|
|
| |
making the MC disassembler tester more robust.
llvm-svn: 129175
|
|
|
|
|
|
| |
on Darwin.
llvm-svn: 128430
|
|
|
|
|
|
|
|
|
| |
the alias of an InstAlias instead of the thing being aliased. Because we need to
know the features that are valid for an InstAlias.
This is part of a work-in-progress.
llvm-svn: 127986
|
|
|
|
|
|
|
| |
- Don't leak parsed operands during tokenization.
- Don't leak printed insts in llvm-mc.
llvm-svn: 126381
|
|
|
|
|
|
| |
caused it to only parse one line of input.
llvm-svn: 126301
|
|
|
|
|
|
|
| |
operand.evaluate as an error code, not as the
contents of the operand.
llvm-svn: 126181
|
|
|
|
| |
llvm-svn: 124077
|
|
|
|
|
|
| |
Patch by Richard Simth.
llvm-svn: 122962
|
|
|
|
|
|
| |
via an out parm.
llvm-svn: 121958
|
|
|
|
|
|
| |
- Treaty talks on the non-proliferation of MC objects broke down.
llvm-svn: 121949
|
|
|
|
| |
llvm-svn: 121471
|
|
|
|
| |
llvm-svn: 121461
|
|
|
|
|
|
|
|
|
|
|
| |
f:
.cfi_startproc
nop
.cfi_endproc
assembled (on ELF).
llvm-svn: 121434
|
|
|
|
|
|
| |
error_code &ec. And fix clients.
llvm-svn: 121379
|
|
|
|
| |
llvm-svn: 120298
|
|
|
|
| |
llvm-svn: 118394
|
|
|
|
|
|
| |
feature lists for instruction pattern predicates.
llvm-svn: 117788
|
|
|
|
| |
llvm-svn: 117296
|
|
|
|
| |
llvm-svn: 115973
|
|
|
|
| |
llvm-svn: 114847
|
|
|
|
| |
llvm-svn: 114718
|
|
|
|
| |
llvm-svn: 114051
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit r113632
Conflicts:
cmake/modules/AddLLVM.cmake
llvm-svn: 113819
|
|
|
|
| |
llvm-svn: 113632
|
|
|
|
|
|
|
|
|
|
| |
of a base class.
This makes it possible to unregister the file from FilesToRemove when
the file is done. Also, this eliminates the need for
formatted_tool_output_file.
llvm-svn: 112706
|
|
|
|
| |
llvm-svn: 112385
|
|
|
|
|
|
| |
they hit the rest of the system.
llvm-svn: 112344
|
|
|
|
|
|
|
|
| |
of problems with output files being left behind or output streams
being left unclosed. Fix llvm-mc to respect the -o option in all
modes, rather than hardcoding outs() in some cases.
llvm-svn: 111603
|
|
|
|
|
|
| |
representation before matching.
llvm-svn: 110791
|
|
|
|
|
|
| |
ownership of the TargetAsmBackend and the MCCodeEmitter.
llvm-svn: 109767
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
better in the llvm world. Among other things, this changes:
1. The guts of libedis are now moved into lib/MC/MCDisassembler
2. llvm-mc now depends on lib/MC/MCDisassembler, not tools/edis,
so edis and mc don't have to be built in series.
3. lib/MC/MCDisassembler no longer depends on the C api, the C
API depends on it.
4. Various code cleanup changes.
There is still a lot to be done to make edis fit with the llvm
design, but this is an incremental step in the right direction.
llvm-svn: 108869
|
|
|
|
|
|
| |
- Unfortunate, but necessary for now to handle subtarget instruction matching. Eventually we should factor out the lower level target machine information so we don't need to do this.
llvm-svn: 108664
|
|
|
|
| |
llvm-svn: 108645
|
|
|
|
| |
llvm-svn: 108644
|
|
|
|
| |
llvm-svn: 107426
|
|
|
|
| |
llvm-svn: 105837
|
|
|
|
| |
llvm-svn: 104873
|