summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Implement bit-accurate sext instruction.Reid Spencer2007-01-201-10/+14
| | | | | | This patch fixes test/Integer/2007-01-17-TruncSext.ll llvm-svn: 33394
* Prologue and epilogue bugs for non-Darwin targets.Evan Cheng2007-01-201-22/+46
| | | | llvm-svn: 33390
* Clean up ARM PEI code.Evan Cheng2007-01-204-91/+75
| | | | llvm-svn: 33389
* Backend is reponsible for aligning the stack.Evan Cheng2007-01-201-7/+5
| | | | llvm-svn: 33388
* We not align the final stack slot but instead let the target do so in ↵Evan Cheng2007-01-201-7/+0
| | | | | | emitPrologue(). Each target can make adjustments to the stack frame and re-align the stack as it deem appropriate. Do not align it twice which can end up wasting stack space. llvm-svn: 33387
* GetRegForReload() now keeps track which registers have been considered and ↵Evan Cheng2007-01-191-8/+32
| | | | | | | | | | | | | | rejected during its quest to find a suitable reload register. This avoids an infinite loop in case like this: t1 := op t2, t3 t2 <- assigned r0 for use by the reload but ended up reuse r1 t3 <- assigned r1 for use by the reload but ended up reuse r0 t1 <- desires r1 sees r1 is taken by t2, tries t2's reload register r0 sees r0 is taken by t3, tries t3's reload register r1 sees r1 is taken by t2, tries t2's reload register r0 ... llvm-svn: 33382
* Unbreak Darwin.Reid Spencer2007-01-191-3/+0
| | | | llvm-svn: 33375
* Help the lli interpreter find the stderr/stdin/stdout symbols. These areReid Spencer2007-01-191-3/+19
| | | | | | | needed for output to be generated. On Linux these are both global vars and macro definitions so we have to special case Linux. llvm-svn: 33374
* Handle each of stderr/stdin/stdout separately.Reid Spencer2007-01-191-0/+4
| | | | llvm-svn: 33373
* Remove dead methods in the ValTypes.Reid Spencer2007-01-191-31/+0
| | | | llvm-svn: 33372
* For this transform: store V, (cast P) -> store (cast V), PReid Spencer2007-01-191-3/+4
| | | | | | | don't allow the transform if V and the pointer's element type are different width integer types. llvm-svn: 33371
* For PR1043:Reid Spencer2007-01-1915-56/+64
| | | | | | | | | | | | | | This is the final patch for this PR. It implements some minor cleanup in the use of IntegerType, to wit: 1. Type::getIntegerTypeMask -> IntegerType::getBitMask 2. Type::Int*Ty changed to IntegerType* from Type* 3. ConstantInt::getType() returns IntegerType* now, not Type* This also fixes PR1120. Patch by Sheng Zhou. llvm-svn: 33370
* Code clean up. Use def : pat instead of defining new instructions.Evan Cheng2007-01-191-127/+87
| | | | llvm-svn: 33368
* fix build on amd64Andrew Lenharth2007-01-191-1/+1
| | | | llvm-svn: 33367
* isDarwin -> isTargetDarwinEvan Cheng2007-01-193-8/+8
| | | | llvm-svn: 33366
* Restructure code a bit to make use of continue (simplifying things). GeneralizeEvan Cheng2007-01-191-64/+87
| | | | | | the .zerofill directive emission to not be darwin-specific. llvm-svn: 33365
* Darwin doesn't support .bss, but it does have .zerofillEvan Cheng2007-01-191-5/+7
| | | | llvm-svn: 33364
* Introduce TargetType's ELF and Darwin.Evan Cheng2007-01-192-8/+17
| | | | llvm-svn: 33363
* Modify emission of jump tables on darwin to emit an extra "l" label thatEvan Cheng2007-01-191-0/+7
| | | | | | | delimits the boundaries of jump tables. This lets the linker's dead code stripping optimization do a better job. llvm-svn: 33362
* Remove this xform:Evan Cheng2007-01-191-7/+26
| | | | | | | | | | (shl (add x, c1), c2) -> (add (shl x, c2), c1<<c2) Replace it with: (add (shl (add x, c1), c2), ) -> (add (add (shl x, c2), c1<<c2), ) This fixes test/CodeGen/ARM/smul.ll llvm-svn: 33361
* Fix section definition.Lauro Ramos Venancio2007-01-191-2/+2
| | | | llvm-svn: 33359
* Adding disassembler interface and external hook to udis86 library.Anton Korobeynikov2007-01-192-1/+67
| | | | llvm-svn: 33358
* ARM backend contribution from Apple.Evan Cheng2007-01-1932-1968/+8695
| | | | llvm-svn: 33353
* Needed to build on PPC Linux.Nick Lewycky2007-01-191-0/+3
| | | | llvm-svn: 33352
* Back out last changes for dataLayout. Much more work is needed.Reid Spencer2007-01-192-10/+0
| | | | llvm-svn: 33347
* For PR761:Reid Spencer2007-01-182-0/+10
| | | | | | Implement reading and writing of the Module's data layout string. llvm-svn: 33346
* - Target PIC style is no longer affected by relocation model.Evan Cheng2007-01-182-49/+49
| | | | | | | | - In x86-64 mode, symbols with external linkage (not just symbols which are defined externally) requires GOT indirect reference. - Stylistic code clean up. llvm-svn: 33345
* Fix InstCombine/2007-01-18-VectorInfLoop.ll, a case where instcombineChris Lattner2007-01-181-3/+9
| | | | | | infinitely loops. llvm-svn: 33343
* Clean up some code around the store V, (cast P) -> store (cast V), PReid Spencer2007-01-181-8/+14
| | | | | | | | | transform. Change some variable names so it is clear what is source and what is dest of the cast. Also, add an assert to ensure that the integer to integer case is asserting if the bitwidths are different. This prevents illegal casts from being formed and catches bitwidth bugs sooner. llvm-svn: 33337
* Use a cheaper computation.Reid Spencer2007-01-181-1/+1
| | | | llvm-svn: 33336
* Fix a regression in the last patch. When constructing a BitMask, be carefulReid Spencer2007-01-181-0/+4
| | | | | | | not to overflow 64-bits and end up with a 0 mask. This caused i64 values to always be stored as 0 with lots of consequential damage to nightly test. llvm-svn: 33335
* move contents of PR587 to here.Chris Lattner2007-01-181-0/+45
| | | | llvm-svn: 33333
* Provide an isPowerOf2ByteWidth method for the IntegerType class. This willReid Spencer2007-01-181-0/+5
| | | | | | | mostly be used by back ends that wish to distinguish between integer types that fit evenly within a natural integer type and those that don't. llvm-svn: 33328
* The zerofill directive needs a newline after it.Bill Wendling2007-01-181-1/+1
| | | | llvm-svn: 33327
* Use the new maskToBitWidth function to ensure that the results ofReid Spencer2007-01-181-10/+15
| | | | | | computations do not overflow the intended bit width. llvm-svn: 33326
* Add an inline helper function that masks a GenericValue to a specifiedReid Spencer2007-01-181-0/+12
| | | | | | bit width. llvm-svn: 33325
* Minor code clean up.Evan Cheng2007-01-182-18/+21
| | | | llvm-svn: 33323
* Make shl instruction mask its result to the correct bitsize. This isReid Spencer2007-01-181-5/+10
| | | | | | | sufficient to get llvm-test/SingleSource/UnitTests/Integer/general-test.ll working with lli in interpreter mode. llvm-svn: 33321
* Two changes:Reid Spencer2007-01-181-18/+17
| | | | | | | | | 1. Fix logic for executeGEP. Only 32-bit and 64-bit integer types are acceptable as indices. 2. Ensure that all integer cast operations truncate their result to the integer size of the operand. llvm-svn: 33318
* Make sure we truncate stored values to their bit width.Reid Spencer2007-01-181-30/+40
| | | | llvm-svn: 33317
* Have the OutputBuffer take the is64Bit and isLittleEndian booleans.Bill Wendling2007-01-183-22/+31
| | | | llvm-svn: 33316
* Modify emission of jump tables on darwin to emit an extra "l" label thatChris Lattner2007-01-182-0/+14
| | | | | | | delimits the boundaries of jump tables. This lets the linker's dead code stripping optimization do a better job. llvm-svn: 33315
* add new JumpTableSpecialLabelPrefix hook to asmprinter for jumptable emission.Chris Lattner2007-01-182-1/+10
| | | | llvm-svn: 33314
* Changed to use the OutputBuffer instead of the methods in MachO and ELFBill Wendling2007-01-173-157/+200
| | | | | | writers. llvm-svn: 33311
* Add CGPassManager.Devang Patel2007-01-171-0/+124
| | | | llvm-svn: 33309
* Update ModulePass::assignPassManager() to take into account PreferredDevang Patel2007-01-171-4/+5
| | | | | | Pass Manager Type. llvm-svn: 33308
* s/PassDebugging_New/PassDebugging/gDevang Patel2007-01-171-5/+5
| | | | llvm-svn: 33307
* Update assignPassManager() signature to allow selection of preferredDevang Patel2007-01-171-4/+13
| | | | | | | pass manager type. This allows new FPPassManager to select Call Graph Pass Manager (if available) as its parent. llvm-svn: 33306
* restructure code a bit to make use of continue (simplifying things). GeneralizeChris Lattner2007-01-171-92/+95
| | | | | | the .zerofill directive emission to not be darwin-specific llvm-svn: 33304
* darwin doesn't support .bss, but it does have .zerofillChris Lattner2007-01-171-0/+2
| | | | llvm-svn: 33303
OpenPOWER on IntegriCloud