summaryrefslogtreecommitdiffstats
path: root/llvm/tools
Commit message (Collapse)AuthorAgeFilesLines
* Fix an integer truncation noticed by MSVC.Benjamin Kramer2009-09-061-1/+1
| | | | llvm-svn: 81109
* opt: Add -S option to print output as LLVM assembly.Daniel Dunbar2009-09-051-5/+14
| | | | llvm-svn: 81082
* Added AsmToken enum constants to MCAsmLexer.h for '[', ']', '{', and '}' inKevin Enderby2009-09-041-0/+4
| | | | | | | preparation of supporting other targets. Then changed the lexer to parse these as tokens. llvm-svn: 81050
* Added the AsmToken::Hash enum constant to MCAsmLexer.h in preparation ofKevin Enderby2009-09-044-25/+48
| | | | | | | | supporting other targets. Changed the code to pass MCAsmInfo to the parser and the lexer. Then changed the lexer to use CommentString from MCAsmInfo instead of a literal '#' character. llvm-svn: 81046
* Removed the non-target independent AsmToken::Register enum constantKevin Enderby2009-09-033-16/+1
| | | | | | | | | | from MCAsmLexer.h in preparation of supporting other targets. Changed the X86AsmParser code to reflect this by removing AsmLexer::LexPercent and looking for AsmToken::Percent when parsing in places that used AsmToken::Register. Then changed X86ATTAsmParser::ParseRegister to parse out registers as an AsmToken::Percent followed by an AsmToken::Identifier. llvm-svn: 80929
* Make bugpoint use ParseIRFile instead of doing the same thing manually.Dan Gohman2009-09-031-12/+5
| | | | llvm-svn: 80927
* Use IRReader.h in opt, to support reading of LLVM Assembly files directly.Dan Gohman2009-09-033-13/+6
| | | | llvm-svn: 80922
* TAI -> MAIChris Lattner2009-09-031-4/+4
| | | | llvm-svn: 80899
* Tweak comment.Daniel Dunbar2009-09-031-1/+1
| | | | llvm-svn: 80891
* Unbreak my CMake build. Say you'll link again.Douglas Gregor2009-09-021-1/+1
| | | | llvm-svn: 80842
* Switch llc from ParseBitcodeFile to ParseIRFile. This lets llcDan Gohman2009-09-022-9/+5
| | | | | | transparently read either LLVM Assembly or LLVM Bitcode files. llvm-svn: 80829
* llvm-mc: Pass values to MCStreamer as MCExprs, not MCValues.Daniel Dunbar2009-08-311-27/+10
| | | | llvm-svn: 80578
* llvm-mc: Simplify EmitAssignment ('.set' is identical to '=').Daniel Dunbar2009-08-312-5/+5
| | | | llvm-svn: 80577
* llvm-mc: Remove MCAsmParser::Parse[Paren]RelocatableExpression.Daniel Dunbar2009-08-312-37/+27
| | | | llvm-svn: 80576
* llvm-mc: Add MCAsmParser::Parse[Paren]Expression forms which return an MCExpr.Daniel Dunbar2009-08-312-0/+10
| | | | llvm-svn: 80574
* llvm-mc: Add MCAsmParser::getContext.Daniel Dunbar2009-08-312-18/+13
| | | | llvm-svn: 80571
* llvm-mc: Switch MCExpr construction to using static member functions, and ↵Daniel Dunbar2009-08-312-19/+19
| | | | | | taking the MCContext (which now owns all MCExprs). llvm-svn: 80569
* llvm-mc: Move AsmExpr into MC lib (as MCExpr).Daniel Dunbar2009-08-315-384/+42
| | | | llvm-svn: 80567
* only print the override triple if it exists!Chris Lattner2009-08-311-2/+3
| | | | llvm-svn: 80534
* Fix some nasty callgraph dangling pointer problems in Chris Lattner2009-08-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | argpromotion and structretpromote. Basically, when replacing a function, they used the 'changeFunction' api which changes the entry in the function map (and steals/reuses the callgraph node). This has some interesting effects: first, the problem is that it doesn't update the "callee" edges in any callees of the function in the call graph. Second, this covers for a major problem in all the CGSCC pass stuff, which is that it is completely broken when functions are deleted if they *don't* reuse a CGN. (there is a cute little fixme about this though :). This patch changes the protocol that CGSCC passes must obey: now the CGSCC pass manager copies the SCC and preincrements its iterator to avoid passes invalidating it. This allows CGSCC passes to mutate the current SCC. However multiple passes may be run on that SCC, so if passes do this, they are now required to *update* the SCC to be current when they return. Other less interesting parts of this patch are that it makes passes update the CG more directly, eliminates changeFunction, and requires clients of replaceCallSite to specify the new callee CGN if they are changing it. llvm-svn: 80527
* llvm-mc: MCStreamer cleanups. - Remove EmitLocalSymbol, this is unsupported ↵Daniel Dunbar2009-08-301-9/+12
| | | | | | | | for now. - Switch Emit{CommonSymbol,Zerofill} to take alignment in bytes (for consistency). llvm-svn: 80484
* Since all std::cout is gone, also remove iostream include.Andreas Neustifter2009-08-281-1/+0
| | | | | | (See http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20090824/085620.html) llvm-svn: 80349
* llvm-mc: Emit .lcomm as .zerofill.Daniel Dunbar2009-08-281-1/+7
| | | | llvm-svn: 80343
* llvm-mc: Unique zero fill sections.Daniel Dunbar2009-08-281-17/+9
| | | | llvm-svn: 80342
* Revert r80305, I forgot a dependent change.Daniel Dunbar2009-08-271-9/+17
| | | | | | | --- Reverse-merging r80305 into '.': U tools/llvm-mc/AsmParser.cpp llvm-svn: 80309
* llvm-mc: Unique sections in .zerofill.Daniel Dunbar2009-08-271-17/+9
| | | | llvm-svn: 80305
* Inverse logic to increase portability.Benjamin Kramer2009-08-271-5/+3
| | | | llvm-svn: 80240
* To make mcc16 run correctly on mac.Sanjiv Gupta2009-08-271-1/+1
| | | | llvm-svn: 80239
* llvm-mc/Mach-O: Add MCCodeEmitter support, for encoding instructions.Daniel Dunbar2009-08-271-1/+2
| | | | | | - No relocations yet, of course. llvm-svn: 80235
* llvm-mc: Only show instruction encodings with --show-encoding.Daniel Dunbar2009-08-271-1/+5
| | | | llvm-svn: 80230
* llvm-mc: Tweak MCCodeEmitter skeleton.Daniel Dunbar2009-08-271-1/+1
| | | | llvm-svn: 80193
* Sketch TargetRegistry support for MCCodeEmitter abstract interface.Daniel Dunbar2009-08-271-1/+4
| | | | | | - Of course, nothing actually can provide this interface yet. llvm-svn: 80188
* llvm-mc/Mach-O: Unique sections properly, so we don't get duplicate textDaniel Dunbar2009-08-263-23/+71
| | | | | | | | sections, etc. - The quick and dirty way, just clone the TargetLoweringObjectFile code. Eventually this should be shared... somehow. llvm-svn: 80168
* llvm-mc/Mach-O: Don't put assembler temporary labels in the symbol table.Daniel Dunbar2009-08-262-11/+22
| | | | | | | | - I moved section creation back into AsmParser. I think policy decisions like this should be pushed higher, not lower, when possible (in addition the assembler has flags which change this behavior, for example). llvm-svn: 80162
* llvm-mc: Make MCValue take const MCSymbol*s.Daniel Dunbar2009-08-261-4/+4
| | | | llvm-svn: 80078
* llvm-mc: Make non-sensical max bytes to .align an error.Daniel Dunbar2009-08-261-5/+10
| | | | | | Also, warn about overflow in alignment values. llvm-svn: 80077
* Changed std::cout to outs(), retaining formating.Andreas Neustifter2009-08-261-27/+27
| | | | llvm-svn: 80076
* EXIT STAGE LEFT: gccas, gccldDaniel Dunbar2009-08-256-148/+1
| | | | llvm-svn: 80023
* Delete some unnecessary flushes.Dan Gohman2009-08-252-4/+0
| | | | llvm-svn: 80013
* Make LLVM command-line tools overwrite their output files without -f.Dan Gohman2009-08-2514-52/+31
| | | | | | | | | | | | | | | | This is conventional command-line tool behavior. -f now just means "enable binary output on terminals". Add a -f option to llvm-extract and llvm-link, for consistency. Remove F_Force from raw_fd_ostream and enable overwriting and truncating by default. Introduce an F_Excl flag to permit users to enable a failure when the file already exists. This flag is currently unused. Update Makefiles and documentation accordingly. llvm-svn: 79990
* Fix the build when using gcc-4.4 on linux. Header neededDuncan Sands2009-08-241-0/+1
| | | | | | for stderr and fprintf. llvm-svn: 79909
* remove the last *stream> #include from a public header.Chris Lattner2009-08-241-0/+1
| | | | llvm-svn: 79892
* These flushes were only needed when the code was transitioning betweenDan Gohman2009-08-241-10/+0
| | | | | | std::cout and outs(). llvm-svn: 79891
* prune the #includes in raw_ostream.h by moving a Chris Lattner2009-08-241-0/+1
| | | | | | | member out of line. ftostr is not particularly speedy, so that method is presumably not perf sensitive. llvm-svn: 79885
* Prune #includes from llvm/Linker.h and llvm/System/Path.h,Chris Lattner2009-08-2315-147/+156
| | | | | | | | | | | | | | | | | | forcing them down into various .cpp files. This change also: 1. Renames TimeValue::toString() and Path::toString() to ::str() for similarity with the STL. 2. Removes all stream insertion support for sys::Path, forcing clients to call .str(). 3. Removes a use of Config/alloca.h from bugpoint, using smallvector instead. 4. Weans llvm-db off <iostream> sys::Path really needs to be gutted, but I don't have the desire to do it at this point. llvm-svn: 79869
* eliminate the ostream version of CheckBitcodeOutputToConsole,Chris Lattner2009-08-234-3/+4
| | | | | | | change the raw_ostream one to take the raw_ostream byref instead of byptr. Prune #includes, eliminate a use of Streams.h llvm-svn: 79863
* eliminate the std::ostream forms of the bitcode writing APIs.Chris Lattner2009-08-232-40/+42
| | | | llvm-svn: 79840
* use raw_fd_ostream instead of fstream with graphwriter,Chris Lattner2009-08-232-7/+8
| | | | | | flush the right stream in opt.cpp. llvm-svn: 79837
* Change Pass::print to take a raw ostream instead of std::ostream,Chris Lattner2009-08-234-29/+32
| | | | | | update all code that this affects. llvm-svn: 79830
* remove the std::ostream version of module and type printing.Chris Lattner2009-08-231-1/+1
| | | | llvm-svn: 79823
OpenPOWER on IntegriCloud