summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Handle some more real world cases of rlwimi. These don't come up thatNate Begeman2005-06-081-10/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | regularly in "normal" code, but for things like software graphics, they make a big difference. For the following code: unsigned short Trans16Bit(unsigned srcA,unsigned srcB,unsigned alpha) { unsigned tmpA,tmpB,mixed; tmpA = ((srcA & 0x03E0) << 15) | (srcA & 0x7C1F); tmpB = ((srcB & 0x03E0) << 15) | (srcB & 0x7C1F); mixed = (tmpA * alpha) + (tmpB * (32 - alpha)); return ((mixed >> 5) & 0x7C1F) | ((mixed >> 20) & 0x03E0); } We now generate: _Trans16Bit: .LBB_Trans16Bit_0: ; entry andi. r2, r4, 31775 rlwimi r2, r4, 15, 7, 11 subfic r4, r5, 32 mullw r2, r2, r4 andi. r4, r3, 31775 rlwimi r4, r3, 15, 7, 11 mullw r3, r4, r5 add r2, r2, r3 srwi r3, r2, 5 andi. r3, r3, 31775 rlwimi r3, r2, 12, 22, 26 blr Instead of: _Trans16Bit: .LBB_Trans16Bit_0: ; entry slwi r2, r4, 15 rlwinm r2, r2, 0, 7, 11 andi. r4, r4, 31775 or r2, r2, r4 subfic r4, r5, 32 mullw r2, r2, r4 slwi r4, r3, 15 rlwinm r4, r4, 0, 7, 11 andi. r3, r3, 31775 or r3, r4, r3 mullw r3, r3, r5 add r2, r2, r3 srwi r3, r2, 5 andi. r3, r3, 31775 srwi r2, r2, 20 rlwimi r3, r2, 0, 22, 26 blr llvm-svn: 22201
* Fix lli linking on Mac OS X 10.4.1 for Intel.Nate Begeman2005-06-081-2/+2
| | | | llvm-svn: 22200
* Remove code for conversion from old style va_args. Preparing the way forAndrew Lenharth2005-06-081-76/+3
| | | | | | returning to the old style :) llvm-svn: 22199
* We also have V8, so do not force every Sparc to be treated like a V9. It isMisha Brukman2005-06-061-8/+0
| | | | | | | still possible to force V9 (even if configure doesn't think it's one) via ``./configure --target=sparcv9-sun-solaris2.8'' so nothing is lost. llvm-svn: 22198
* * Add ability to specify the target LLVM will compile for via configureMisha Brukman2005-06-061-2/+6
| | | | | | * Minor whitespace cleanups llvm-svn: 22197
* Fix spelling of `correlate'Misha Brukman2005-06-061-1/+1
| | | | llvm-svn: 22196
* allow marking of loads and stores in the instruction stream with enough ↵Andrew Lenharth2005-06-062-0/+31
| | | | | | information to reconstruct the Value* if it existed llvm-svn: 22195
* hide basic block labels. The utility of these for debuging is long since passedAndrew Lenharth2005-06-061-2/+2
| | | | llvm-svn: 22194
* * Replace block of commented-out lines with #if 0Misha Brukman2005-06-061-26/+29
| | | | | | * Remove warning "control reaches end of non-void function" llvm-svn: 22193
* hack to fix bzip2 (bug 571)Andrew Lenharth2005-06-041-0/+2
| | | | llvm-svn: 22192
* Fix the definitions of LLVMGCC and LLVMGXX to include the EXEEXT (theReid Spencer2005-06-022-10/+14
| | | | | | | .exe extension) on Cygwin. This fixes the last few remaining Cygwin issues. Thanks to Aaron Gray for tracking this down. llvm-svn: 22191
* Make sure that Cygwin assembly includes _ as part of function names.Reid Spencer2005-06-021-0/+9
| | | | llvm-svn: 22190
* Put in a hack for Cygwin that prevents mkdtemp from being used sinceReid Spencer2005-06-021-0/+5
| | | | | | configure seems to find it on Cygwin but linking against it fails. llvm-svn: 22189
* try custom expanders, doesn't seem to expand yet, so disabledAndrew Lenharth2005-05-311-0/+61
| | | | llvm-svn: 22188
* switch to the new live in thing. Really, this time it worksAndrew Lenharth2005-05-311-1/+1
| | | | llvm-svn: 22187
* switch to the new live in thingAndrew Lenharth2005-05-311-2/+2
| | | | llvm-svn: 22186
* switch to the new live in thingAndrew Lenharth2005-05-311-65/+60
| | | | llvm-svn: 22185
* Make sure the tools get built if no build target is specified.Reid Spencer2005-05-291-1/+1
| | | | llvm-svn: 22184
* match gcc, makes diff easierAndrew Lenharth2005-05-271-2/+2
| | | | llvm-svn: 22179
* Fix 2005-05-12-Int64ToFPAndrew Lenharth2005-05-261-0/+26
| | | | | | | | | The issue is there is no unsigned -> double conversion, only signed. So I need to test the sign and do a different thing depending on it. Ideally this should be in a different BB, but in the mean time, I use a branch free method. llvm-svn: 22177
* Add a -cvstag option for testing specific branches, such as release candidatesMisha Brukman2005-05-261-4/+10
| | | | llvm-svn: 22176
* Add a "libs-only" target for avoiding construction of the tools andReid Spencer2005-05-251-4/+9
| | | | | | runtime libraries. llvm-svn: 22169
* Two dist-check related changes:Reid Spencer2005-05-242-5/+16
| | | | | | | | | | | | 1. Allow DIST_CHECK_CONFIG_OPTION to specify a set of options to be passed to the configure script during the dist-check target. This allows things to be passed down on a project basis so the configure doesn't fail. 2. Use the tar | (cd ; tar ) idiom to copy files which is more flexible than using the cp command. THis allows us to exclude CVS .svn directories at source rather than stripping them out of the tar ball. llvm-svn: 22166
* Remove trailing blank line, just to test whether the new commit scriptReid Spencer2005-05-211-1/+0
| | | | | | is going to credit the commit correctly or not. llvm-svn: 22165
* Make the registration hash_map static. No other module needs it. Also,Reid Spencer2005-05-211-1/+5
| | | | | | document what its for a little better. llvm-svn: 22164
* Adjust the file comment to read a little easier.Reid Spencer2005-05-211-6/+7
| | | | llvm-svn: 22163
* Make sure ... arguments are casted to sbyte* where needed.Reid Spencer2005-05-211-13/+12
| | | | llvm-svn: 22162
* Add a "brief" comment for CastToCStrReid Spencer2005-05-211-0/+1
| | | | llvm-svn: 22161
* new testcaseChris Lattner2005-05-201-0/+10
| | | | llvm-svn: 22160
* Fix mismatched type problem that crashed on cases like this:Chris Lattner2005-05-201-8/+17
| | | | | | | | sprintf(P, "%s", X); Where X is not an sbyte*. This fixes the bug JohnMC reported on llvm-bugs. llvm-svn: 22159
* Fix Transforms/SimplifyCFG/switch-simplify-crash.llChris Lattner2005-05-201-0/+7
| | | | llvm-svn: 22158
* New testcase that crashes simplifycfg, identified accidentally by JohnMCChris Lattner2005-05-201-0/+153
| | | | llvm-svn: 22157
* C'mon everybody, let's modify X86JITInfo.cpp. This time, we add <iostream>Nate Begeman2005-05-201-1/+2
| | | | | | so that the shiny new use of std::cerr is defined. llvm-svn: 22156
* Finally get the quoting right for both Unix and Windows for the llvmgcc andReid Spencer2005-05-201-2/+2
| | | | | | | | | llvmgxx programs. dejagnu doesn't understand single quote and we need to pass double quotes through to the shell in order to escape blanks in the paths. This patch uses \" to escape the quotes passed through to the shell. Thanks to Aaron Gray for testing this out on cygwin. llvm-svn: 22155
* Since everyone else has "fixed" this file, might as well join in the fun.Misha Brukman2005-05-201-4/+3
| | | | | | | * Change assert() to std::cerr printout, as it will not appear in opt builds * Add comments to clarify what #ifdef/#else/#endif match what condition(s) llvm-svn: 22154
* now with a legend, and multiple lines work.Andrew Lenharth2005-05-202-6/+10
| | | | llvm-svn: 22153
* OK, the simple scheme for the db plus a couple of cgi scripts thatAndrew Lenharth2005-05-203-0/+154
| | | | | | do the dynamic plotting of stuff. Still being tested, but makes graphs llvm-svn: 22152
* Fix this a 3rd time :)Chris Lattner2005-05-201-1/+2
| | | | llvm-svn: 22151
* fix compilation error due to no abort being defined. There is probably a ↵Andrew Lenharth2005-05-201-0/+1
| | | | | | better way to do this llvm-svn: 22150
* re-enable direct calls, this should just be a performance boostDuraid Madina2005-05-201-6/+5
| | | | llvm-svn: 22148
* this seems dead (and broke the ia64 build, so..)Duraid Madina2005-05-201-1/+0
| | | | llvm-svn: 22147
* Give the asmparser the ability to parse strings. Patch contributed byChris Lattner2005-05-204-13/+49
| | | | | | Alexander Friedman llvm-svn: 22146
* Give the asmparser the ability to parse strings, patch contributed byChris Lattner2005-05-201-0/+1
| | | | | | Alexander Friedman! llvm-svn: 22145
* Fix tail call support in VC++ buildsJeff Cohen2005-05-201-38/+45
| | | | llvm-svn: 22143
* Make sure that tool names don't have any leading or trailing spaces in them.Reid Spencer2005-05-191-1/+1
| | | | | | If they do, it screws up the concatenation of the .exe suffix on cygwin. llvm-svn: 22142
* Make sure that tool names don't have any leading or trailing spaces in them.Reid Spencer2005-05-192-3/+3
| | | | | | If they do, it screws up the concatenation of the .exe suffix on cygwin. llvm-svn: 22141
* Build the install directories just exactly as any others. Hopefully thisReid Spencer2005-05-191-11/+4
| | | | | | helps out cygwin build. llvm-svn: 22140
* For PR514: Do not configure removed filesReid Spencer2005-05-191-3/+0
| | | | llvm-svn: 22139
* For PR514: Do not configure removed filesReid Spencer2005-05-191-7/+0
| | | | llvm-svn: 22138
* Fastcc passes arguments in EAX and EDX, make sure the JIT doesn't clobber themChris Lattner2005-05-191-6/+39
| | | | llvm-svn: 22137
OpenPOWER on IntegriCloud