- Aug 11, 2009
-
-
Jim Grosbach authored
and short. Well, it's kinda short. Definitely nasty and brutish. The front-end generates the register/unregister calls into the SjLj runtime, call-site indices and landing pad dispatch. The back end fills in the LSDA with the call-site information provided by the front end. Catch blocks are not yet implemented. Built on Darwin and verified no llvm-core "make check" regressions. llvm-svn: 78625
-
Owen Anderson authored
llvm-svn: 78610
-
Eric Christopher authored
No functional change. llvm-svn: 78608
-
- Aug 10, 2009
-
-
Eric Christopher authored
llvm-svn: 78600
-
Daniel Dunbar authored
llvm-svn: 78598
-
Daniel Dunbar authored
on target specific operands for testing class membership and converting to MCInst operands. llvm-svn: 78597
-
Owen Anderson authored
llvm-svn: 78595
-
Owen Anderson authored
llvm-svn: 78593
-
Daniel Dunbar authored
llvm-svn: 78587
-
Owen Anderson authored
Start moving TargetLowering away from using full MVTs and towards SimpleValueType, which will simplify the privatization of IntegerType in the future. llvm-svn: 78584
-
Daniel Dunbar authored
structure. llvm-svn: 78581
-
Chris Lattner authored
llvm-svn: 78576
-
Chris Lattner authored
instead of syntactically as a string. This means that it keeps track of the segment, section, flags, etc directly and asmprints them in the right format. This also includes parsing and validation support for llvm-mc and "attribute(section)", so we should now start getting errors about invalid section attributes from the compiler instead of the assembler on darwin. Still todo: 1) Uniquing of darwin mcsections 2) Move all the Darwin stuff out to MCSectionMachO.[cpp|h] 3) there are a few FIXMEs, for example what is the syntax to get the S_GB_ZEROFILL segment type? llvm-svn: 78547
-
- Aug 09, 2009
-
-
Daniel Dunbar authored
- We can now discriminate SUB32ri8 from SUB32ri, for example. llvm-svn: 78530
-
Daniel Dunbar authored
classes for X86. llvm-svn: 78524
-
Daniel Dunbar authored
-2 FIXMEs. llvm-svn: 78523
-
Chris Lattner authored
llvm-svn: 78511
-
- Aug 08, 2009
-
-
Eric Christopher authored
bytes for F2 0F 38 and propagate. Add a FIXME for a set of possibilities which correspond to intrinsics already used. New test. llvm-svn: 78508
-
Daniel Dunbar authored
Also, redefined MatchRegisterName to just return the register value or a sentinel, to simplify the generated code. llvm-svn: 78504
-
Bruno Cardoso Lopes authored
since they are in 64 bit mode with i64immSExt32 imms. JIT is not affected since it handles both word absolute relocations in the same way llvm-svn: 78479
-
Daniel Dunbar authored
- This doesn't actually improve the algorithm (its still linear), but the generated (match) code is now fairly compact and table driven. Still need a generic string matcher. - The table still needs to be compressed, this is quite simple to do and should shrink it to under 16k. - This also simplifies and restructures the code to make the match classes more explicit, in anticipation of resolving ambiguities. llvm-svn: 78461
-
Chris Lattner authored
error condition get trapped with an assert. llvm-svn: 78449
-
Anton Korobeynikov authored
llvm-svn: 78443
-
- Aug 07, 2009
-
-
Bill Wendling authored
llvm-svn: 78411
-
Daniel Dunbar authored
llvm-svn: 78404
-
Daniel Dunbar authored
llvm-svn: 78381
-
Daniel Dunbar authored
i386-apple-darwin9. This presumably will get fixed once the generated code improves. llvm-svn: 78379
-
Daniel Dunbar authored
- Still not very sane, but a least its not 60k lines on X86. :) - In terms of correctness, currently some things are hard wired for X86, and we still don't properly resolve ambiguities (this is ignoring the instructions we don't even match due to funny .td stuff or other corner cases). The high level changes: 1. Represent tokens which are significant for matching explicitly as separate operands. This uniformly handles not only the instruction mnemonic, but also 'signficiant' syntax like the '*' in "call * ...". 2. Separate the matching of operands to an instruction from the construction of the MCInst. In theory this can be done during matching, but since the number of variations is small I think it makes sense to decompose the problems. 3. Improved a few of the mechanisms to at least successfully flatten / tokenize the assembly strings for PowerPC and ARM. 4. The comment at the top of AsmMatcherEmitter.cpp explains the approach I'm moving towards for handling ambiguous instructions. The high-bit is to infer a partial ordering of the operand classes (and force the user to specify one if we can't) and use that to resolve ambiguities. llvm-svn: 78378
-
- Aug 06, 2009
-
-
Anton Korobeynikov authored
llvm-svn: 78299
-
Dan Gohman authored
by aggressive chain operand optimization. UpdateNodeOperands does not modify the node in place if it would result in a node identical to an existing node. llvm-svn: 78297
-
Anton Korobeynikov authored
llvm-svn: 78293
-
Anton Korobeynikov authored
subtle bug with small code model. llvm-svn: 78255
-
Dan Gohman authored
is a subset of the other, but both are subsets of GR32. llvm-svn: 78250
-
- Aug 05, 2009
-
-
Chris Lattner authored
llvm-svn: 78242
-
Dan Gohman authored
a superset relation. This code wants to test the regular superset relation. llvm-svn: 78236
-
Daniel Dunbar authored
llvm-svn: 78219
-
Dan Gohman authored
PR4572. A few tests have some minor code regressions due to different coalescing. llvm-svn: 78217
-
Devang Patel authored
llvm-svn: 78207
-
Bruno Cardoso Lopes authored
a dirty hack and isn't need anymore since the last x86 code emitter patch) - Add a target-dependent modifier to addend calculation - Use R_X86_64_32S relocation for X86::reloc_absolute_word_sext - Use getELFSectionFlags whenever possible - fix getTextSection to use TLOF and emit the right text section - Handle global emission for static ctors, dtors and Type::PointerTyID - Some minor fixes llvm-svn: 78176
-
Dan Gohman authored
MMX arguments. This fixes PR4684. llvm-svn: 78163
-