summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Include <pthread.h> before we use pthread_self/pthread_killDouglas Gregor2011-04-291-3/+3
| | | | llvm-svn: 130510
* The last hack for producing bit identical output with cfi on OS X.Rafael Espindola2011-04-291-0/+8
| | | | llvm-svn: 130504
* Change DwarfCFIException's member variables to track what it actuallyRafael Espindola2011-04-292-34/+38
| | | | | | emmits: .cfi_personality, .cfi_lsda and the moves. llvm-svn: 130503
* Teach Thumb2 isel to fold and->rotr ==> ROR.Andrew Trick2011-04-291-0/+9
| | | | | | Generalization of Nate Begeman's patch! llvm-svn: 130502
* Factor some code to needsCFIMoves. Avoid printing moves when we don't have to.Rafael Espindola2011-04-292-4/+19
| | | | llvm-svn: 130501
* This is done.Benjamin Kramer2011-04-291-20/+0
| | | | llvm-svn: 130499
* Balance parentheses.Benjamin Kramer2011-04-291-1/+1
| | | | llvm-svn: 130489
* InstCombine: turn (C1 << A) << C2) into (C1 << C2) << A)Benjamin Kramer2011-04-291-1/+8
| | | | | | Fixes PR9809. llvm-svn: 130485
* clean up after Sean's r127646 patch.Chris Lattner2011-04-291-429/+330
| | | | llvm-svn: 130475
* use the MachineInstrBuilder operator-> to simplify some code.Chris Lattner2011-04-294-21/+18
| | | | | | There are probably more instances of this floating around. llvm-svn: 130474
* Last bit by bit compatibility patch to MCDwarf.cpp: If a FDE with no LSDA isRafael Espindola2011-04-291-5/+20
| | | | | | assigned to a CIE that requires one, just output a 0. llvm-svn: 130472
* Add an alternative implementation of CIE and FDE emission that outputs themRafael Espindola2011-04-291-0/+58
| | | | | | in the same order as the one in CodeGen. llvm-svn: 130471
* Update comments and checks to match reality.Eric Christopher2011-04-291-9/+2
| | | | llvm-svn: 130464
* Whitespace.Eric Christopher2011-04-291-11/+11
| | | | llvm-svn: 130463
* Revert r130454; apparently this doesn't actually work.Eli Friedman2011-04-281-2/+19
| | | | llvm-svn: 130462
* Fix a rather obscure crash caused by ARM fast-isel generating code which ↵Eli Friedman2011-04-281-19/+2
| | | | | | | | redefines a register. rdar://problem/9338332 . llvm-svn: 130454
* Preserve line number information.Devang Patel2011-04-281-0/+7
| | | | llvm-svn: 130450
* Coalesce some DEBUGs (moving an only-used-in-DEBUG variable's declaration ↵Matt Beaumont-Gay2011-04-281-6/+7
| | | | | | into the DEBUG) llvm-svn: 130448
* We require threse bits to be zero, too.Benjamin Kramer2011-04-281-2/+2
| | | | | | | This shouldn't happen in practice because the icmp would be a constant. Add a check so we don't miscompile code if something goes wrong. llvm-svn: 130446
* Only read *predecessor once so as to fix a theoretical issue where it changesNick Lewycky2011-04-281-7/+10
| | | | | | | | | | | | | | | | | | | between two reads (threading). Fix an off-by-one in the indirect counter table that I meant to revert after an earlier experiment. Whoops! Implement GCOV_PREFIX. Doesn't handle GCOV_PREFIX_STRIP yet. Fix an off-by-one in string emission. Extra whoops! Tolerate DISubprograms that have null Function*'s attached to them. I don't yet understand what this means, but it happens when you have a global static with a non-trivial constructor/destructor. Fix a crash on switch statements with a single successor (default-only). llvm-svn: 130443
* Target/X86/MC: Add an option for disabling arith relaxation, for my own testingDaniel Dunbar2011-04-281-0/+11
| | | | | | purposes. llvm-svn: 130438
* Add the getExprForFDESymbol method that responsible for computing theRafael Espindola2011-04-283-14/+17
| | | | | | expressions used in the FDE to refer to symbols. llvm-svn: 130437
* Beautify debug info probe output.Devang Patel2011-04-281-4/+13
| | | | llvm-svn: 130435
* Add MemoryBuffer::getBufferKind() to report whether a memory buffer uses ↵Ted Kremenek2011-04-281-0/+8
| | | | | | malloc'ed or mmap'ed memory. This is for performance analysis. llvm-svn: 130432
* Remove DbgDeclare only if all uses are converted.Devang Patel2011-04-281-1/+5
| | | | llvm-svn: 130431
* Remove bounded StringRef::compare() since nothing but Clang SA was using it ↵Lenny Maiorani2011-04-281-21/+0
| | | | | | and it is just as easy to use StringRef::substr() preceding StringRef::compare() to achieve the same thing. llvm-svn: 130430
* fast-isel sret calls, try 2. We actually do need to do something on x86-32. ↵Eli Friedman2011-04-281-2/+4
| | | | | | rdar://problem/9303592 . llvm-svn: 130429
* Fix a comment.Benjamin Kramer2011-04-281-1/+1
| | | | llvm-svn: 130428
* improve comment.Chris Lattner2011-04-281-1/+6
| | | | llvm-svn: 130426
* Do not lose line number info while eliminating tail call.Devang Patel2011-04-281-1/+3
| | | | llvm-svn: 130419
* final step needed to resolve PR6627, which allows us to flatten the code down toChris Lattner2011-04-281-3/+7
| | | | | | | | | | | | a nice and tidy: %x1 = load i32* %0, align 4 %1 = icmp eq i32 %x1, 1179403647 br i1 %1, label %if.then, label %if.end instead of doing lots of loads and branches. May the FreeBSD bootloader long fit in its allocated space. llvm-svn: 130416
* code cleanups only.Chris Lattner2011-04-281-36/+32
| | | | llvm-svn: 130414
* Revert r130348; causing buildbot issues on x86-32.Eli Friedman2011-04-281-0/+1
| | | | llvm-svn: 130412
* Add command line option to print debug info in human readable form as ↵Devang Patel2011-04-281-0/+55
| | | | | | comment in llvm IR output. This, i.e -enable-debug-info-comment, is very useful if you want to easily find out which optimization pass is losing line number information. llvm-svn: 130409
* Reapply r130340: Fix for PR9730.Andrew Trick2011-04-281-1/+1
| | | | llvm-svn: 130408
* InstCombine: Merge "(trunc x) == C1 & (and x, CA) == C2" into a single and+icmp.Benjamin Kramer2011-04-281-0/+36
| | | | | | This happens when GVN widens loads. Part of PR6627. llvm-svn: 130405
* Be more layout aware here and swap the successor and branch conditionEric Christopher2011-04-281-1/+8
| | | | | | if it means we get a fallthrough. llvm-svn: 130404
* centralize "marking for deletion" into a helper function. Pass GVN around to Chris Lattner2011-04-281-52/+56
| | | | | | static functions instead of passing around tons of random ivars. llvm-svn: 130403
* Promote toErase to be an ivar of the GVN class.Chris Lattner2011-04-281-39/+35
| | | | llvm-svn: 130401
* Add a getExprForPersonalitySymbol method to MCAsmInfo. Use it whenRafael Espindola2011-04-286-3/+64
| | | | | | converting the symbol passed to .cfi_personality into bytes is the file. llvm-svn: 130400
* Mark the EH symbol global or weak if the corresponding function is.Rafael Espindola2011-04-283-0/+17
| | | | llvm-svn: 130397
* Fix the last -Wnon-pod-memset I'm seeing. This is benign, but appearsChandler Carruth2011-04-281-1/+1
| | | | | | | | | | | | | a bit more sinister as the memset doesn't do what the constructor does. There seems to be a cleaner solution than a cast here though, instead we can point the memset destination into the union its actually trying to clear. An alternative is to point to the Untyped member of this union. Review appreciated, and if that is cleaner I'm happy to switch. All of these should be functionally equivalent to the original code. llvm-svn: 130395
* teach GVN to widen integer loads when they are overaligned, when doing an Chris Lattner2011-04-282-30/+154
| | | | | | | | | | | wider load would allow elimination of subsequent loads, and when the wider load is still a native integer type. This eliminates a ton of loads on various benchmarks involving struct fields, though it is somewhat hobbled by clang not being very aggressive about field alignment. This is yet another step along the way towards resolving PR6627. llvm-svn: 130390
* Let the immediate leaf pattern take transforms and switch the signedEric Christopher2011-04-283-30/+30
| | | | | | | | immediate patterns in arm to using the pattern. Handles rdar://9299434 llvm-svn: 130386
* move PR9803 to this readme.Chris Lattner2011-04-281-0/+28
| | | | llvm-svn: 130385
* Add a small temporary hack for producing identical eh_frame sections on OS X.Rafael Espindola2011-04-282-6/+14
| | | | | | | This removes one of the main advantages of moving eh_frame to MC, but makes the transition a lot easier to debug (run md5). llvm-svn: 130379
* Produce the EH_frame# symbols if needed.Rafael Espindola2011-04-281-2/+11
| | | | llvm-svn: 130378
* Forward isFunctionEHFrameSymbolPrivate. If it is false, produce the foo.ehRafael Espindola2011-04-281-0/+7
| | | | | | symbols. llvm-svn: 130375
* Teach dwarf writer to handle complex address expression for .debug_loc entries.Devang Patel2011-04-286-27/+129
| | | | | | | This fixes clang generated blocks' variables' debug info. Radar 9279956. llvm-svn: 130373
* Fix a silly mistake in r130338.Eli Friedman2011-04-281-1/+1
| | | | llvm-svn: 130360
OpenPOWER on IntegriCloud