summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Model fpscr to prevent fcmped / fcmpezs etc from being deleted.Evan Cheng2009-07-202-2/+8
| | | | llvm-svn: 76390
* Add plumbing for the `linker_private' linkage type. This type is meant forBill Wendling2009-07-2024-82/+145
| | | | | | | | | "private" symbols which the assember shouldn't strip, but which the linker may remove after evaluation. This is mostly useful for Objective-C metadata. This is plumbing, so we don't have a use of it yet. More to come, etc. llvm-svn: 76385
* CMake support for SystemZ.Daniel Dunbar2009-07-202-0/+29
| | | | llvm-svn: 76384
* Don't override LowerArguments in the SPARC backend. In addition to Eli Friedman2009-07-192-31/+38
| | | | | | | | being more consistent with other backends, this makes the SPARC backend deal with functions with arguments with illegal types correctly, which fixes some tests in test/CodeGen/Generic. llvm-svn: 76375
* Fix a regression from 76124. Thumb1 instructions default to S bit being true.Evan Cheng2009-07-192-13/+19
| | | | llvm-svn: 76374
* Fix http://llvm.org/bugs/show_bug.cgi?id=4583Jakob Stoklund Olesen2009-07-191-2/+6
| | | | | | | | Inline asm instructions may have additional <imp-def,kill> register operands. These operands are not marked with a flag like the normal asm operands, so we must not assert that there is a flag. llvm-svn: 76373
* Fix ConstantRange::unionWith. Also make it work a little hard in some cases toNick Lewycky2009-07-191-45/+50
| | | | | | | return the smallest union of two ranges instead of just any range that happens to contain the union. llvm-svn: 76360
* Fix some minor MSVC compiler warnings.Daniel Dunbar2009-07-193-9/+5
| | | | llvm-svn: 76356
* Unbreak buildDaniel Dunbar2009-07-192-1/+2
| | | | llvm-svn: 76354
* Switch Alpha over to the new call lowering style. New code mostly Eli Friedman2009-07-195-159/+220
| | | | | | | | | | | | | copied from the SystemZ target. I don't think this causes any significant changes to the output (I compared the assembly, and the results appeared to be essentially unchanged), although I don't actually have an Alpha to test on. I would appreciate if anyone with the appropriate hardware could test this. I'm not sure if that includes anyone subscribed to llvm-commits, though. llvm-svn: 76353
* SystemZ *does* have a CodeGen/AsmPrinter split.Daniel Dunbar2009-07-191-1/+1
| | | | | | - What it doesn't have is the rest of its cmake files... llvm-svn: 76352
* Tweak cmake files for the four targets that don't split CodeGen out.Daniel Dunbar2009-07-194-4/+4
| | | | | | | - We should canonicalize this and get rid of the cmake and llvm-config hacks to support both variants. llvm-svn: 76350
* Add dependencies from TargetInfo onto .td generation.Daniel Dunbar2009-07-1912-0/+12
| | | | | | | - Shouldn't really be necessary, but currently .inc files get included into some main target headers. llvm-svn: 76349
* Use R_X86_64_32S to handle Jump Table Index relocation entries. Hide TAI ↵Bruno Cardoso Lopes2009-07-185-29/+46
| | | | | | usage inside getSection* functions llvm-svn: 76347
* Add some missing includes.Daniel Dunbar2009-07-184-0/+4
| | | | llvm-svn: 76346
* Canonicalize bitcasts between types like <1 x i64> and i64 to Eli Friedman2009-07-181-0/+24
| | | | | | | | | | insertelement/extractelement. I'm not entirely sure this is precisely what we want to do: should we prefer bitcast(insertelement) or insertelement(bitcast)? Similarly. should we prefer extractelement(bitcast) or bitcast(extractelement)? llvm-svn: 76345
* Put Target definitions inside Target specific header, and llvm namespace.Daniel Dunbar2009-07-1855-57/+79
| | | | llvm-svn: 76344
* Remove duplication in Program::Execute{And,No}Wait.Mikhail Glushenkov2009-07-183-276/+91
| | | | | | | Implemented by moving the code out of static functions into methods of Program class. llvm-svn: 76340
* Use a better name for the label relocations while emitting them for Jump TablesBruno Cardoso Lopes2009-07-183-4/+5
| | | | llvm-svn: 76334
* Add support to properly reference private symbols on relocation entries.Bruno Cardoso Lopes2009-07-186-17/+95
| | | | | | | Use proper relocation type to build relocations for JumpTables (rodata sections). llvm-svn: 76326
* Back out 76300; apparently the preference is to canonicalize the other Eli Friedman2009-07-181-16/+6
| | | | | | way (bitcast -> insert/extractelement). llvm-svn: 76325
* add a fixmeChris Lattner2009-07-181-0/+5
| | | | llvm-svn: 76324
* Add carry producing / using versions of add / subAnton Korobeynikov2009-07-181-6/+63
| | | | llvm-svn: 76316
* Expand fremAnton Korobeynikov2009-07-181-0/+2
| | | | llvm-svn: 76315
* Turn abort() into unreachableAnton Korobeynikov2009-07-181-4/+6
| | | | llvm-svn: 76314
* Turn few asserts into errors / unreachable'sAnton Korobeynikov2009-07-183-12/+14
| | | | llvm-svn: 76313
* Handle vector returnsAnton Korobeynikov2009-07-181-3/+3
| | | | llvm-svn: 76312
* Provide expansion for ct* intrinsicsAnton Korobeynikov2009-07-182-0/+19
| | | | llvm-svn: 76311
* Expand sext_inreg for i1Anton Korobeynikov2009-07-181-0/+2
| | | | llvm-svn: 76310
* Add combine: X sdiv (1 << Y) -> X udiv (1 << Y) when X doesn't have the Eli Friedman2009-07-181-4/+15
| | | | | | sign bit set. llvm-svn: 76304
* Remove no-op check.Eli Friedman2009-07-181-2/+1
| | | | llvm-svn: 76302
* Remove dead check.Eli Friedman2009-07-181-3/+1
| | | | llvm-svn: 76301
* Canonicalize insert/extractelement from single-element vectors into Eli Friedman2009-07-181-6/+16
| | | | | | | | | bitcasts. It would also be possible to canonicalize the other way; does anyone have a preference? llvm-svn: 76300
* Fix simplifylibcalls memset recognition to work on 64-bit platforms Eli Friedman2009-07-181-2/+2
| | | | | | where int is 32 bits. llvm-svn: 76293
* Replace intersectWith with maximalIntersectWith. The latter guarantees thatNick Lewycky2009-07-183-58/+19
| | | | | | | | all values belonging to the intersection will belong to the resulting range. The former was inconsistent about that point (either way is fine, just pick one.) This is part of PR4545. llvm-svn: 76289
* Fix the inline cost calculation to take into account instructions Eli Friedman2009-07-181-0/+7
| | | | | | | which cannot be folded even if they have constant operands. Significantly helps if_spppsubr.c attached to PR4573. llvm-svn: 76285
* Add line breaks to make the debug output a bit more readable.Eli Friedman2009-07-181-4/+4
| | | | llvm-svn: 76284
* Catch more coalescing opportunities.Evan Cheng2009-07-181-4/+7
| | | | llvm-svn: 76282
* Enable cross register class coalescing.Evan Cheng2009-07-184-14/+141
| | | | llvm-svn: 76281
* Make GetElementPtr ConstantExprs default to having no pointer overflow.Dan Gohman2009-07-181-1/+5
| | | | llvm-svn: 76280
* Revert 76177 for now. It's messing up ARM asm printing. Also this ↵Evan Cheng2009-07-181-2/+0
| | | | | | significant debate about its efficiency. llvm-svn: 76279
* Fix this accidentally inverted condition.Dan Gohman2009-07-181-1/+1
| | | | llvm-svn: 76278
* Add EngineBuilder to ExecutionEngine in favor of the five optional argument ↵Reid Kleckner2009-07-187-55/+109
| | | | | | | | EE::create(). Also a test commit. llvm-svn: 76276
* Convert more code to use Operator instead of explicitly handling bothDan Gohman2009-07-172-43/+15
| | | | | | | ConstantExpr and Instruction. This involves duplicating some code between GetElementPtrInst and GEPOperator, but it's not a lot. llvm-svn: 76265
* Update CMake file.Ted Kremenek2009-07-171-0/+1
| | | | llvm-svn: 76264
* Fix pr4552. Stack slot coloring with register must take care not to generate ↵Evan Cheng2009-07-171-0/+16
| | | | | | illegal ams. llvm-svn: 76258
* llvm-mc: Add -triple, and start fetching the target asm printer.Daniel Dunbar2009-07-171-0/+19
| | | | llvm-svn: 76257
* Make BasicAliasAnalysis and Value::getUnderlyingObject useDan Gohman2009-07-173-16/+28
| | | | | | | | GEPOperator's hasNoPointer0verflow(), and make a few places in instcombine that create GEPs that may overflow clear the NoOverflow value. Among other things, this partially addresses PR2831. llvm-svn: 76252
* Fix some typos in a comment.Dan Gohman2009-07-171-7/+7
| | | | llvm-svn: 76249
* Fix x86 inline ams 'q' constraint support. In 32-bit mode, it's just like ↵Evan Cheng2009-07-171-1/+31
| | | | | | 'Q', i.e. EAX, EDX, ECX, EBX. In 64-bit mode, it just means all the i64r registers. Yeah, that makes sense. llvm-svn: 76248
OpenPOWER on IntegriCloud