summaryrefslogtreecommitdiffstats
path: root/llvm/utils
Commit message (Collapse)AuthorAgeFilesLines
* make is the standard name, not gmakeChris Lattner2005-08-021-1/+1
| | | | llvm-svn: 22573
* Eliminate all remaining tabs and trailing spaces.Jeff Cohen2005-07-271-4/+4
| | | | llvm-svn: 22523
* Fix PR595: These error messages should not be looking at CGI.Name, theyChris Lattner2005-07-151-9/+13
| | | | | | should be looking at CGI.TheDef->getName(). llvm-svn: 22445
* Add support for a TODO; instructions in .td files can now have argumentsNate Begeman2005-07-141-1/+24
| | | | | | | | printed as part of the opcode. This allows something like cmp${cc}ss in the x86 backed to be printed as cmpltss, cmpless, etc. depending on what the value of $cc is. llvm-svn: 22439
* * Add ability to specify the target LLVM will compile for via configureMisha Brukman2005-06-061-2/+6
| | | | | | * Minor whitespace cleanups llvm-svn: 22197
* Add a -cvstag option for testing specific branches, such as release candidatesMisha Brukman2005-05-261-4/+10
| | | | llvm-svn: 22176
* 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
* It would help if the headings were sorted properly.Reid Spencer2005-05-161-1/+1
| | | | llvm-svn: 22096
* Fix a brain blunder in the HTML output.Reid Spencer2005-05-161-3/+4
| | | | llvm-svn: 22094
* Sometimes tab completion is *not* your friend. Added the wrong file, byReid Spencer2005-05-162-21/+257
| | | | | | accident so now I'm correcting it. The script is userloc.pl not userloc.html llvm-svn: 22093
* Add a script to generate information about the number of lines of code aReid Spencer2005-05-161-0/+21
| | | | | | user has checked in (not necessarily authored) based on cvs annotate. llvm-svn: 22091
* add support for fastcc and friendsChris Lattner2005-05-132-2/+2
| | | | llvm-svn: 21979
* * Fix wording of the warningMisha Brukman2005-05-121-2/+8
| | | | | | * Add autoindent, smartindent, and smarttab options to the file llvm-svn: 21905
* Hilight tailChris Lattner2005-05-062-2/+2
| | | | llvm-svn: 21726
* import fix and plot multiple lines at onceAndrew Lenharth2005-04-272-15/+29
| | | | llvm-svn: 21596
* Generate a gnuplot script for any program and any test (like llc or gcc)Andrew Lenharth2005-04-271-0/+39
| | | | llvm-svn: 21593
* So you want to import nightly tester data into a data base? Have we got the ↵Andrew Lenharth2005-04-271-7/+67
| | | | | | perl script for you llvm-svn: 21592
* fix for parse, and a start at db import. Using CVS as scp :)Andrew Lenharth2005-04-272-3/+31
| | | | llvm-svn: 21591
* A first step towards being able to do more interesting things with the ↵Andrew Lenharth2005-04-271-0/+32
| | | | | | nightly tester data. Moreinteresting things will come soon, so tune in llvm-svn: 21584
* elisp code to help with LLVM code standards complianceMisha Brukman2005-04-241-0/+12
| | | | llvm-svn: 21497
* .vimrc file to aid in LLVM coding standards conformanceMisha Brukman2005-04-241-0/+34
| | | | llvm-svn: 21496
* Eliminate tabs and trailing spacesJeff Cohen2005-04-2226-3702/+3702
| | | | llvm-svn: 21441
* Remove trailing whitespaceMisha Brukman2005-04-2220-136/+136
| | | | llvm-svn: 21428
* ignore generated filesChris Lattner2005-04-191-0/+4
| | | | llvm-svn: 21362
* fix bogus warningChris Lattner2005-04-191-0/+1
| | | | llvm-svn: 21361
* Major change to tblgen: instead of resolving values every time a class isChris Lattner2005-04-193-73/+119
| | | | | | | | | | | finished up, only resolve fully when the def is defined. This allows things to be changed and all uses to be propagated through. This implements TableGen/LazyChange.td and fixes TemplateArgRename.td in the process. None of the .td files used in LLVM backends are changed at all by this patch. llvm-svn: 21344
* implementing shifting of literal integersChris Lattner2005-04-192-0/+16
| | | | llvm-svn: 21336
* Add initial lexer and parser support for shifting values. Every use of thisChris Lattner2005-04-193-0/+29
| | | | | | will lead to it being rejected though. llvm-svn: 21335
* spiff up the nightly tester output one more notchChris Lattner2005-03-171-3/+3
| | | | llvm-svn: 20650
* Print out who commits and what files were modified at the bottom of the test ↵Chris Lattner2005-03-161-8/+14
| | | | | | summary log sent to llvm-commits. llvm-svn: 20641
* Fix computation of compiled objects, contributed by Vladimir Merzliakov!Chris Lattner2005-03-111-1/+1
| | | | llvm-svn: 20564
* Replace tabs with spaces, separate function arguments with a spaceMisha Brukman2005-03-101-12/+12
| | | | llvm-svn: 20538
* Improve formatting of the sent mail for the dj test results.Chris Lattner2005-03-101-4/+15
| | | | llvm-svn: 20537
* Include local time on the web page for start/end times.Chris Lattner2005-02-132-4/+5
| | | | llvm-svn: 20150
* This method takes sys::Path objects now.Chris Lattner2005-01-231-2/+2
| | | | llvm-svn: 19773
* Drop dead #includeChris Lattner2005-01-231-2/+0
| | | | llvm-svn: 19768
* The meat of this utility has been moved to FileUtilities, where it can beChris Lattner2005-01-231-153/+8
| | | | | | used by other tools. llvm-svn: 19767
* Minor fix.Chris Lattner2005-01-221-1/+1
| | | | llvm-svn: 19761
* This is the final big of factoring. This shares cases in suboperandChris Lattner2005-01-221-8/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | differences, which means that identical instructions (after stripping off the first literal string) do not run any different code at all. On the X86, this turns this code: switch (MI->getOpcode()) { case X86::ADC32mi: printOperand(MI, 4, MVT::i32); break; case X86::ADC32mi8: printOperand(MI, 4, MVT::i8); break; case X86::ADC32mr: printOperand(MI, 4, MVT::i32); break; case X86::ADD32mi: printOperand(MI, 4, MVT::i32); break; case X86::ADD32mi8: printOperand(MI, 4, MVT::i8); break; case X86::ADD32mr: printOperand(MI, 4, MVT::i32); break; case X86::AND32mi: printOperand(MI, 4, MVT::i32); break; case X86::AND32mi8: printOperand(MI, 4, MVT::i8); break; case X86::AND32mr: printOperand(MI, 4, MVT::i32); break; case X86::CMP32mi: printOperand(MI, 4, MVT::i32); break; case X86::CMP32mr: printOperand(MI, 4, MVT::i32); break; case X86::MOV32mi: printOperand(MI, 4, MVT::i32); break; case X86::MOV32mr: printOperand(MI, 4, MVT::i32); break; case X86::OR32mi: printOperand(MI, 4, MVT::i32); break; case X86::OR32mi8: printOperand(MI, 4, MVT::i8); break; case X86::OR32mr: printOperand(MI, 4, MVT::i32); break; case X86::ROL32mi: printOperand(MI, 4, MVT::i8); break; case X86::ROR32mi: printOperand(MI, 4, MVT::i8); break; case X86::SAR32mi: printOperand(MI, 4, MVT::i8); break; case X86::SBB32mi: printOperand(MI, 4, MVT::i32); break; case X86::SBB32mi8: printOperand(MI, 4, MVT::i8); break; case X86::SBB32mr: printOperand(MI, 4, MVT::i32); break; case X86::SHL32mi: printOperand(MI, 4, MVT::i8); break; case X86::SHLD32mrCL: printOperand(MI, 4, MVT::i32); break; case X86::SHR32mi: printOperand(MI, 4, MVT::i8); break; case X86::SHRD32mrCL: printOperand(MI, 4, MVT::i32); break; case X86::SUB32mi: printOperand(MI, 4, MVT::i32); break; case X86::SUB32mi8: printOperand(MI, 4, MVT::i8); break; case X86::SUB32mr: printOperand(MI, 4, MVT::i32); break; case X86::TEST32mi: printOperand(MI, 4, MVT::i32); break; case X86::TEST32mr: printOperand(MI, 4, MVT::i32); break; case X86::TEST8mi: printOperand(MI, 4, MVT::i8); break; case X86::XCHG32mr: printOperand(MI, 4, MVT::i32); break; case X86::XOR32mi: printOperand(MI, 4, MVT::i32); break; case X86::XOR32mi8: printOperand(MI, 4, MVT::i8); break; case X86::XOR32mr: printOperand(MI, 4, MVT::i32); break; } into this: switch (MI->getOpcode()) { case X86::ADC32mi: case X86::ADC32mr: case X86::ADD32mi: case X86::ADD32mr: case X86::AND32mi: case X86::AND32mr: case X86::CMP32mi: case X86::CMP32mr: case X86::MOV32mi: case X86::MOV32mr: case X86::OR32mi: case X86::OR32mr: case X86::SBB32mi: case X86::SBB32mr: case X86::SHLD32mrCL: case X86::SHRD32mrCL: case X86::SUB32mi: case X86::SUB32mr: case X86::TEST32mi: case X86::TEST32mr: case X86::XCHG32mr: case X86::XOR32mi: case X86::XOR32mr: printOperand(MI, 4, MVT::i32); break; case X86::ADC32mi8: case X86::ADD32mi8: case X86::AND32mi8: case X86::OR32mi8: case X86::ROL32mi: case X86::ROR32mi: case X86::SAR32mi: case X86::SBB32mi8: case X86::SHL32mi: case X86::SHR32mi: case X86::SUB32mi8: case X86::TEST8mi: case X86::XOR32mi8: printOperand(MI, 4, MVT::i8); break; } After this, the generated asmwriters look pretty much as though they were generated by hand. This shrinks the X86 asmwriter.inc files from 55101->39669 and 55429->39551 bytes each, and PPC from 16766->12859 bytes. llvm-svn: 19760
* Implement *even more* factoring. In particular, if all of the instructionChris Lattner2005-01-221-20/+62
| | | | | | | | | | | | | | | | | | strings starts out with a constant string, we emit the string first, using a table lookup (instead of a switch statement). Because this is usually the opcode portion of the asm string, the differences between the instructions have now been greatly reduced. This allows many more case statements to be grouped together. This patch also allows instruction cases to be grouped together when the instruction patterns are exactly identical (common after the opcode string has been ripped off), and when the differing operand is a MachineInstr operand that needs to be formatted. The end result of this is a mean and lean generated AsmPrinter! llvm-svn: 19759
* Refactor code for numbering instructions into CodeGenTarget.Chris Lattner2005-01-223-10/+29
| | | | llvm-svn: 19758
* Fix VC++ compilation errorJeff Cohen2005-01-221-0/+1
| | | | llvm-svn: 19757
* Implement factoring of instruction pattern strings. In particular, instead ofChris Lattner2005-01-221-10/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | emitting code like this: case PPC::ADD: O << "add "; printOperand(MI, 0, MVT::i64); O << ", "; prin tOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << '\n '; break; case PPC::ADDC: O << "addc "; printOperand(MI, 0, MVT::i64); O << ", "; pr intOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << ' \n'; break; case PPC::ADDE: O << "adde "; printOperand(MI, 0, MVT::i64); O << ", "; pr intOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << ' \n'; break; ... Emit code like this: case PPC::ADD: case PPC::ADDC: case PPC::ADDE: ... switch (MI->getOpcode()) { case PPC::ADD: O << "add "; break; case PPC::ADDC: O << "addc "; break; case PPC::ADDE: O << "adde "; break; ... } printOperand(MI, 0, MVT::i64); O << ", "; printOperand(MI, 1, MVT::i64); O << ", "; printOperand(MI, 2, MVT::i64); O << "\n"; break; This shrinks the PPC asm writer from 24785->15205 bytes (even though the new asmwriter has much more whitespace than the old one), and the X86 printers shrink quite a bit too. The important implication of this is that GCC no longer hits swap when building the PPC backend in optimized mode. Thus this fixes PR448. -Chris llvm-svn: 19755
* Fix the ::: problemChris Lattner2005-01-221-1/+1
| | | | llvm-svn: 19754
* Minor refactoring, no functionality change.Chris Lattner2005-01-221-15/+20
| | | | llvm-svn: 19753
* Seperate asmstring parsing from emission. This allows the code to be simplerChris Lattner2005-01-221-86/+153
| | | | | | | | | | | | | | | | | | | and more understandable. It also allows us to do simple things like fold consequtive literal strings together. For example, instead of emitting this for the X86 backend: O << "adc" << "l" << " "; we now generate this: O << "adcl "; *whoa* :) This shrinks the X86 asmwriters from 62729->58267 and 65176->58644 bytes for the intel/att asm writers respectively. llvm-svn: 19749
* make double-dollar properly escape asmstringsAndrew Lenharth2005-01-221-0/+1
| | | | llvm-svn: 19740
* Fix the path from ../lib/Debug to ../Debug/lib per changes to Makefiles.Reid Spencer2005-01-141-1/+1
| | | | llvm-svn: 19550
* Update the documentation about -enable-llcbeta vs. -enable-linscanReid Spencer2005-01-131-1/+1
| | | | llvm-svn: 19530
OpenPOWER on IntegriCloud