summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/ARM
Commit message (Collapse)AuthorAgeFilesLines
* Factor out the code to add a MachineOperand to a MachineInstrBuilder.Dan Gohman2009-02-181-18/+4
| | | | llvm-svn: 64891
* GV with null value initializer shouldn't go to BSS if it's meant for a ↵Evan Cheng2009-02-181-1/+3
| | | | | | mergeable strings section. Currently it only checks for Darwin. Someone else please check if it should apply to other targets as well. llvm-svn: 64877
* and one more fileDale Johannesen2009-02-131-64/+92
| | | | llvm-svn: 64430
* Remove refs to non-DebugLoc versions of BuildMI from ARM.Dale Johannesen2009-02-135-23/+40
| | | | llvm-svn: 64429
* Eliminate a couple of non-DebugLoc BuildMI variants.Dale Johannesen2009-02-121-4/+6
| | | | | | Modify callers. llvm-svn: 64409
* fix PR3538 for ARM.Chris Lattner2009-02-121-12/+19
| | | | llvm-svn: 64384
* Move debug loc info along when the spiller creates new instructions.Bill Wendling2009-02-121-36/+65
| | | | llvm-svn: 64342
* Turns out AnalyzeBranch can modify the mbb being analyzed. This is a nastyEvan Cheng2009-02-092-4/+8
| | | | | | | | suprise to some callers, e.g. register coalescer. For now, add an parameter that tells AnalyzeBranch whether it's safe to modify the mbb. A better solution is out there, but I don't have time to deal with it right now. llvm-svn: 64124
* Constify TargetInstrInfo::EmitInstrWithCustomInserter, allowingDan Gohman2009-02-072-2/+2
| | | | | | ScheduleDAG's TLI member to use const. llvm-svn: 64018
* Get rid of the last non-DebugLoc versions of getNode!Dale Johannesen2009-02-071-12/+15
| | | | | | | | | | | | Many targets build placeholder nodes for special operands, e.g. GlobalBaseReg on X86 and PPC for the PIC base. There's no sensible way to associate debug info with these. I've left them built with getNode calls with explicit DebugLoc::getUnknownLoc operands. I'm not too happy about this but don't see a good improvement; I considered adding a getPseudoOperand or something, but it seems to me that'll just make it harder to read. llvm-svn: 63992
* Remove more non-DebugLoc getNode variants. UseDale Johannesen2009-02-061-2/+1
| | | | | | | | getCALLSEQ_{END,START} to permit passing no DebugLoc there. UNDEF doesn't logically have DebugLoc; add getUNDEF to encapsulate this. llvm-svn: 63978
* Remove more non-DebugLoc versions of getNode.Dale Johannesen2009-02-061-41/+53
| | | | llvm-svn: 63969
* Eliminate remaining non-DebugLoc version of getTargetNode.Dale Johannesen2009-02-061-1/+3
| | | | llvm-svn: 63951
* Move getPointerRegClass from TargetInstrInfo to TargetRegisterInfo.Evan Cheng2009-02-064-7/+8
| | | | llvm-svn: 63938
* get rid of some non-DebugLoc getTargetNode variants.Dale Johannesen2009-02-061-1/+2
| | | | llvm-svn: 63909
* Get rid of one more non-DebugLoc getNode andDale Johannesen2009-02-061-7/+9
| | | | | | | its corresponding getTargetNode. Lots of caller changes. llvm-svn: 63904
* A few more isAsCheapAsAMove.Evan Cheng2009-02-051-2/+2
| | | | llvm-svn: 63852
* Remove non-DebugLoc forms of CopyToReg and CopyFromReg.Dale Johannesen2009-02-041-7/+12
| | | | | | Adjust callers. llvm-svn: 63789
* Remove non-DebugLoc versions of getLoad and getStore.Dale Johannesen2009-02-041-68/+83
| | | | | | Adjust the many callers of those versions. llvm-svn: 63767
* Add some DL propagation to places that didn'tDale Johannesen2009-02-032-14/+14
| | | | | | have it yet. More coming. llvm-svn: 63673
* Create DebugLoc information in FastISel. Several temporary methods wereBill Wendling2009-02-031-1/+1
| | | | | | | created. Specifically, those BuildMIs which use "DebugLoc::getUnknownLoc()". I'll remove them soon. llvm-svn: 63584
* Make LowerCallTo and LowerArguments take a DebugLocDale Johannesen2009-01-301-1/+3
| | | | | | argument. Adjust all callers and overloaded versions. llvm-svn: 63444
* Rename getAnalysisToUpdate to getAnalysisIfAvailable.Duncan Sands2009-01-281-2/+2
| | | | llvm-svn: 63198
* Suppress a compile time warning.Evan Cheng2009-01-281-0/+2
| | | | llvm-svn: 63161
* silence a warning when assertions are disabled.Chris Lattner2009-01-251-3/+3
| | | | llvm-svn: 62976
* Change TargetInstrInfo::isMoveInstr to return source and destination ↵Evan Cheng2009-01-202-5/+9
| | | | | | sub-register indices as well. llvm-svn: 62600
* ARMCompilationCallback should not save / restore vfp registers if vfp is not ↵Evan Cheng2009-01-161-2/+2
| | | | | | available. llvm-svn: 62299
* Add the private linkage.Rafael Espindola2009-01-152-5/+7
| | | | llvm-svn: 62279
* Move a few containers out of ScheduleDAGInstrs::BuildSchedGraphDan Gohman2009-01-151-1/+1
| | | | | | | | | | | and into the ScheduleDAGInstrs class, so that they don't get destructed and re-constructed for each block. This fixes a compile-time hot spot in the post-pass scheduler. To help facilitate this, tidy and do some minor reorganization in the scheduler constructor functions. llvm-svn: 62275
* Const-qualify getPreIndexedAddressParts and friends.Dan Gohman2009-01-152-4/+4
| | | | llvm-svn: 62259
* Rename getABITypeSize to getTypePaddedSize, asDuncan Sands2009-01-122-2/+2
| | | | | | suggested by Chris. llvm-svn: 62099
* Removed trailing whitespace from Makefiles.Misha Brukman2009-01-091-3/+3
| | | | llvm-svn: 61991
* Convert DwarfWriter into a pass.Devang Patel2009-01-081-10/+11
| | | | | | Now Users request DwarfWriter through getAnalysisUsage() instead of creating an instance of DwarfWriter object directly. llvm-svn: 61955
* Tidy up #includes, deleting a bunch of unnecessary #includes.Dan Gohman2009-01-052-2/+1
| | | | llvm-svn: 61715
* Fix a 80 col. violation.Evan Cheng2008-12-111-1/+2
| | | | llvm-svn: 60901
* Preliminary ARM debug support based on patch by Mikael of FlexyCore.Evan Cheng2008-12-104-20/+57
| | | | llvm-svn: 60851
* Fix MachineCodeEmitter to use uintptr_t instead of intptr_t. This avoids ↵Evan Cheng2008-12-101-1/+1
| | | | | | some overflow issues. Patch by Thomas Jablin. llvm-svn: 60828
* Clean up some ARM GV asm printing out; minor fixes to match what gcc does.Evan Cheng2008-12-062-20/+32
| | | | llvm-svn: 60621
* Re-did 60519. It turns out Darwin's handling of hidden visibility symbols ↵Evan Cheng2008-12-052-20/+44
| | | | | | are a bit more complicate than I expected. Both declarations and weak definitions still need a stub indirection. However, the stubs are in data section and they contain the addresses of the actual symbols. llvm-svn: 60571
* Temporarily revert r60519. It was causing a bootstrap failure:Bill Wendling2008-12-041-1/+1
| | | | | | | | | | | | | | | | /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/xgcc -B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/ -B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/bin/ -B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/lib/ -isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/include -isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/sys-include -DHAVE_CONFIG_H -I. -I../../../llvm-gcc.src/libgomp -I. -I../../../llvm-gcc.src/libgomp/config/posix -I../../../llvm-gcc.src/libgomp -Wall -pthread -Werror -O2 -g -O2 -MT barrier.lo -MD -MP -MF .deps/barrier.Tpo -c ../../../llvm-gcc.src/libgomp/barrier.c -fno-common -DPIC -o .libs/barrier.o checking for sys/file.h... /var/folders/zG/zGE-ZJOGFiGjv0B5cs5oYE+++TM/-Tmp-//cc34Jg5P.s:13:non-relocatable subtraction expression, "_gomp_tls_key" minus "L1$pb" /var/folders/zG/zGE-ZJOGFiGjv0B5cs5oYE+++TM/-Tmp-//cc34Jg5P.s:13:symbol: "_gomp_tls_key" can't be undefined in a subtraction expression make[4]: *** [barrier.lo] Error 1 make[4]: *** Waiting for unfinished jobs.... /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/xgcc -B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.obj/./gcc/ -B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/bin/ -B/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/lib/ -isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/include -isystem /Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvm-gcc.install/i386-apple-darwin9.5.0/sys-include -DHAVE_CONFIG_H -I. -I../../../llvm-gcc.src/libgomp -I. -I../../../llvm-gcc.src/libgomp/config/posix -I../../../llvm-gcc.src/libgomp -Wall -pthread -Werror -O2 -g -O2 -MT alloc.lo -MD -MP -MF .deps/alloc.Tpo -c ../../../llvm-gcc.src/libgomp/alloc.c -o alloc.o >/dev/null 2>&1 yes checking for sys/param.h... make[3]: *** [all-recursive] Error 1 make[2]: *** [all] Error 2 make[1]: *** [all-target-libgomp] Error 2 make[1]: *** Waiting for unfinished jobs.... llvm-svn: 60527
* Visibility hidden GVs do not require extra load of symbol address from the ↵Evan Cheng2008-12-041-1/+1
| | | | | | GOT or non-lazy-ptr. llvm-svn: 60519
* Split foldMemoryOperand into public non-virtual and protected virtualDan Gohman2008-12-032-12/+12
| | | | | | | parts, and add target-independent code to add/preserve MachineMemOperands. llvm-svn: 60488
* Rename isSimpleLoad to canFoldAsLoad, to better reflect its meaning.Dan Gohman2008-12-033-10/+10
| | | | llvm-svn: 60487
* Update a comment.Dan Gohman2008-12-031-3/+4
| | | | llvm-svn: 60484
* Fix bug 3140.Rafael Espindola2008-12-031-0/+1
| | | | | | Print a single parameter .file directive if we have an ELF target. llvm-svn: 60480
* Add a sanity-check to tablegen to catch the case where isSimpleLoadDan Gohman2008-12-031-1/+1
| | | | | | | | | is set but mayLoad is not set. Fix all the problems this turned up. Change code to not use isSimpleLoad instead of mayLoad unless it really wants isSimpleLoad. llvm-svn: 60459
* Fix a missing #include.Dan Gohman2008-12-031-0/+1
| | | | llvm-svn: 60458
* There are no longer any places that require aDuncan Sands2008-12-011-2/+2
| | | | | | | | MERGE_VALUES node with only one operand, so get rid of special code that only existed to handle that possibility. llvm-svn: 60349
* Change the interface to the type legalization methodDuncan Sands2008-12-012-18/+35
| | | | | | | | | | | ReplaceNodeResults: rather than returning a node which must have the same number of results as the original node (which means mucking around with MERGE_VALUES, and which is also easy to get wrong since SelectionDAG folding may mean you don't get the node you expect), return the results in a vector. llvm-svn: 60348
* Move target independent td files from lib/Target/ to include/llvm/Target so ↵Evan Cheng2008-11-241-1/+1
| | | | | | they can be distributed along with the header files. llvm-svn: 59953
OpenPOWER on IntegriCloud