Bill Wendling [Tue, 2 Oct 2007 21:43:06 +0000 (21:43 +0000)]
Another missed optimization with LICM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42552
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 2 Oct 2007 21:02:53 +0000 (21:02 +0000)]
Small label changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42549
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 2 Oct 2007 21:01:16 +0000 (21:01 +0000)]
Now with source code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42548
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 2 Oct 2007 20:54:32 +0000 (20:54 +0000)]
Now with LL code!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42547
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 2 Oct 2007 20:42:59 +0000 (20:42 +0000)]
Another missed optimization.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42546
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 2 Oct 2007 19:55:05 +0000 (19:55 +0000)]
Micro-optimization -- missed LICM opportunity.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42542
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 18:04:24 +0000 (18:04 +0000)]
Updating my credits entry.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42541
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 2 Oct 2007 17:47:38 +0000 (17:47 +0000)]
Document new sqrt and powi handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42540
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Tue, 2 Oct 2007 17:43:59 +0000 (17:43 +0000)]
Rewrite sqrt and powi to use anyfloat. By popular demand.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42537
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 16:42:22 +0000 (16:42 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42533
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 16:42:10 +0000 (16:42 +0000)]
Providing --with-ocaml-libdir for ./configure. The default is the
stdlib if it's beneath --prefix, and is libdir/ocaml otherwise.
If someone has a better way than this to test whether $B is a path
within $A, I'd love to hear it:
if test "$A" \< "$B" -a "$B" \< "${A}~"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42532
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 10:14:42 +0000 (10:14 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42529
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 10:14:32 +0000 (10:14 +0000)]
Fixing (harmless) typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42528
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 09:50:32 +0000 (09:50 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42527
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Tue, 2 Oct 2007 09:50:18 +0000 (09:50 +0000)]
Add explicit --enable-bindings option to configure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42526
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 2 Oct 2007 00:47:43 +0000 (00:47 +0000)]
Fix test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42522
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 2 Oct 2007 00:44:20 +0000 (00:44 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42521
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Tue, 2 Oct 2007 00:43:25 +0000 (00:43 +0000)]
Mention memdep in the AA documentation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42519
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 2 Oct 2007 00:39:19 +0000 (00:39 +0000)]
New test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42517
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Tue, 2 Oct 2007 00:19:27 +0000 (00:19 +0000)]
If the user did not check out LLVM and request it to be built, it should be a build error. This relies on the user having a successful build of LLVM, but the tests will fail if they dont.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42514
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 1 Oct 2007 23:44:33 +0000 (23:44 +0000)]
Refactor code to add load / store folded instructions -> register only
instructions reverse map.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42509
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 1 Oct 2007 23:08:35 +0000 (23:08 +0000)]
Fix stride computations for long double arrays.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42508
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 1 Oct 2007 22:40:20 +0000 (22:40 +0000)]
Move the code that emits the .file directives so that it runs after the
SourceFiles list is fully filled in so that it sees all of the files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42506
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 1 Oct 2007 22:17:20 +0000 (22:17 +0000)]
-pre-RA-sched=none, simple, simple-noitin are gone.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42505
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 1 Oct 2007 21:22:57 +0000 (21:22 +0000)]
PR 1603 test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42502
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 1 Oct 2007 20:44:07 +0000 (20:44 +0000)]
Remove simple scheduler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42499
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 1 Oct 2007 18:12:58 +0000 (18:12 +0000)]
Relax unsafe use check. If there is one unconditional use inside the loop then it is safe to promote value even if there is another conditional use inside the loop.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42493
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 1 Oct 2007 18:12:48 +0000 (18:12 +0000)]
Typo. X86comi doesn't read / write chain's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42492
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Mon, 1 Oct 2007 16:03:14 +0000 (16:03 +0000)]
Add getABITypeSize, getABITypeSizeInBits
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42488
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Mon, 1 Oct 2007 16:01:23 +0000 (16:01 +0000)]
Add empty() member functions to a few container-like classes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42487
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Sun, 30 Sep 2007 19:08:12 +0000 (19:08 +0000)]
remove dup comment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42486
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Sun, 30 Sep 2007 18:19:03 +0000 (18:19 +0000)]
Constant fold int-to-long-double conversions;
use APFloat for int-to-float/double; use
round-to-nearest for these (implementation-defined,
seems to match gcc).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42484
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Sun, 30 Sep 2007 18:17:01 +0000 (18:17 +0000)]
Simplify and fix signed int -> FP conversions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42483
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Sun, 30 Sep 2007 13:39:29 +0000 (13:39 +0000)]
AsmPrinters overriding getAnalysisUsage should call super.
And not super's super, either.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42482
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 30 Sep 2007 08:31:46 +0000 (08:31 +0000)]
Add a helper useful when mapping from a map element to its hash node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42480
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sun, 30 Sep 2007 04:17:16 +0000 (04:17 +0000)]
Template-ize more of the DomTree internal implementation details. Only the calculate() methods for DomTree and PostDomTree remain to be merged/template-ized.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42476
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 30 Sep 2007 00:58:59 +0000 (00:58 +0000)]
document DenseSet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42475
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 30 Sep 2007 00:47:20 +0000 (00:47 +0000)]
Add a new DenseSet abstraction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42474
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 29 Sep 2007 16:38:37 +0000 (16:38 +0000)]
Add newline at end of file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42470
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Sat, 29 Sep 2007 16:25:54 +0000 (16:25 +0000)]
Check that the second parameter of init_trampoline
can be resolved to a function. This is required
for codegen and used by instcombine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42469
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Sat, 29 Sep 2007 02:23:08 +0000 (02:23 +0000)]
This is done already.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42467
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Sat, 29 Sep 2007 02:13:43 +0000 (02:13 +0000)]
Collector is the base class for garbage collection code generators.
This version enhances the previous patch to add root initialization
as discussed here:
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-
20070910/053455.html
Collector gives its subclasses control over generic algorithms:
unsigned NeededSafePoints; //< Bitmask of required safe points.
bool CustomReadBarriers; //< Default is to insert loads.
bool CustomWriteBarriers; //< Default is to insert stores.
bool CustomRoots; //< Default is to pass through to backend.
bool InitRoots; //< If set, roots are nulled during lowering.
It also has callbacks which collectors can hook:
/// If any of the actions are set to Custom, this is expected to
/// be overriden to create a transform to lower those actions to
/// LLVM IR.
virtual Pass *createCustomLoweringPass() const;
/// beginAssembly/finishAssembly - Emit module metadata as
/// assembly code.
virtual void beginAssembly(Module &M, std::ostream &OS,
AsmPrinter &AP,
const TargetAsmInfo &TAI) const;
virtual void finishAssembly(Module &M,
CollectorModuleMetadata &CMM,
std::ostream &OS, AsmPrinter &AP,
const TargetAsmInfo &TAI) const;
Various other independent algorithms could be implemented, but were
not necessary for the initial two collectors. Some examples are
listed here:
http://llvm.org/docs/GarbageCollection.html#collector-algos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42466
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Sat, 29 Sep 2007 01:38:42 +0000 (01:38 +0000)]
Demoting CHelpers.h to include/llvm/Support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42465
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Berlin [Sat, 29 Sep 2007 00:50:40 +0000 (00:50 +0000)]
Switch to densemap rather than std::set
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42462
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Sat, 29 Sep 2007 00:42:56 +0000 (00:42 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42461
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Sat, 29 Sep 2007 00:42:21 +0000 (00:42 +0000)]
PR1601: etags not configured correctly
Resolving this by deleting vestigal etags remnants.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42460
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 29 Sep 2007 00:00:36 +0000 (00:00 +0000)]
Enabling new condition code modeling scheme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42459
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Fri, 28 Sep 2007 23:54:26 +0000 (23:54 +0000)]
Do not ignore packed member size while selecting union type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42458
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 28 Sep 2007 23:53:40 +0000 (23:53 +0000)]
Teach SplitVectorOp how to split INSERT_VECTOR_ELT.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42457
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Fri, 28 Sep 2007 22:50:54 +0000 (22:50 +0000)]
Update how to release document.
Add release version to getting started guide.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42454
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 28 Sep 2007 22:32:30 +0000 (22:32 +0000)]
If two instructions are both two-address code, favors (schedule closer to
terminator) the one that has a CopyToReg use. This fixes
2006-05-11-InstrSched.ll with -new-cc-modeling-scheme.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42453
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 28 Sep 2007 20:50:50 +0000 (20:50 +0000)]
really fix PR1581, thanks to Daniel Dunbar for pointing
this out.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42448
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Fri, 28 Sep 2007 20:09:40 +0000 (20:09 +0000)]
Make Value::getNameLen not crash on an empty name, fixing PR1712.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42444
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 28 Sep 2007 19:37:35 +0000 (19:37 +0000)]
Remove a poor scheduling heuristic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42443
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 28 Sep 2007 19:24:24 +0000 (19:24 +0000)]
Trim some unneeded fields.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42442
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 28 Sep 2007 18:46:28 +0000 (18:46 +0000)]
Record latest work.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42441
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 28 Sep 2007 18:44:17 +0000 (18:44 +0000)]
Fix long double -> uint64 conversion.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42440
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 28 Sep 2007 18:06:58 +0000 (18:06 +0000)]
minor long double related changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42439
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 28 Sep 2007 16:50:28 +0000 (16:50 +0000)]
Make the checks for DW_FORM_data4 consistent with the others, and
add more such code for DIEDwarfLabel::SizeOf and DIEObjectLabel::SizeOf.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42435
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Fri, 28 Sep 2007 15:43:33 +0000 (15:43 +0000)]
Use 32-bit data directives for DW_FORM_data4 format data, even on
targets with 64-bit addresses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42434
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 28 Sep 2007 12:53:01 +0000 (12:53 +0000)]
Refactor the memcpy lowering for the x86 target.
The only generated code difference is that now we call memcpy when
the size of the array is unknown. This matches GCC behavior and is
better since the run time value can be arbitrarily large.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42433
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 28 Sep 2007 01:35:02 +0000 (01:35 +0000)]
Stop inventing new words. :-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42429
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 28 Sep 2007 01:25:07 +0000 (01:25 +0000)]
Remove unneeded #include.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42428
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Fri, 28 Sep 2007 01:23:47 +0000 (01:23 +0000)]
Have PostDomTree use the newly templated DFSPass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42427
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Fri, 28 Sep 2007 01:19:48 +0000 (01:19 +0000)]
Pessimisively assume ADJCALLSTACKDOWN / ADJCALLSTACKUP (which becomes sub / add) clobbers EFLAGS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42426
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 28 Sep 2007 01:08:20 +0000 (01:08 +0000)]
Add sqrt and powi intrinsics for long double.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42423
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Fri, 28 Sep 2007 00:21:38 +0000 (00:21 +0000)]
Don't do SRA for unions with long double fields.
Fixes a SWB crash.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42422
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 27 Sep 2007 23:23:00 +0000 (23:23 +0000)]
Convert DFSPass into a templated friend function, in preparation for making it common to DomTree and PostDomTree.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42420
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 27 Sep 2007 23:12:31 +0000 (23:12 +0000)]
TargetAsmInfo::getAddressSize() was incorrect for x86-64 and 64-bit targets
other than PPC64. Instead of fixing it, just remove it and fix all the
places that use it to use TargetData::getPointerSize() instead, as there
aren't very many. Most of the references were in DwarfWriter.cpp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42419
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Thu, 27 Sep 2007 22:18:46 +0000 (22:18 +0000)]
CollectorMetadata abstractly describes stack maps for a function.
It includes:
- location and of each safe point in machine code (identified by a
label)
- location of each root within the stack frame (identified by an
offset), including the metadata tag provided to llvm.gcroot in
the user program
- size of the stack frame (for collectors which want to cheat on
stack crawling :)
- and eventually will include liveness
It is to be populated by back-ends during code-generation.
CollectorModuleMetadata aggregates this information across the
entire module.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42418
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 21:50:05 +0000 (21:50 +0000)]
Use GR64 in 64-bit mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42417
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Thu, 27 Sep 2007 19:34:27 +0000 (19:34 +0000)]
My previous Registry.h header, as well as Collectors.h, which is the
registry for dynamically-loaded garbage collection compiler plugins.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42415
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Thu, 27 Sep 2007 19:31:36 +0000 (19:31 +0000)]
GarbageCollection.html is expanded to encompass the coming
capabilities. This is a major rewrite and is easier to read en toto
rather than patchwise.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42414
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 19:01:55 +0000 (19:01 +0000)]
Doh. Calls clobber EFLAGS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42413
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 18:46:06 +0000 (18:46 +0000)]
Avoid inserting a live register more than once.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42410
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Thu, 27 Sep 2007 18:14:33 +0000 (18:14 +0000)]
Couple of fixes to mention bunzip2 and make instructions more clear.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42407
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 27 Sep 2007 18:02:47 +0000 (18:02 +0000)]
While searching for appropriate place for temporaries, do not over-incerement iterator.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42406
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Thu, 27 Sep 2007 17:32:04 +0000 (17:32 +0000)]
Mention Loop Index Split
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42405
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 27 Sep 2007 15:47:16 +0000 (15:47 +0000)]
new testcase for PR1708
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42398
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Berlin [Thu, 27 Sep 2007 15:42:23 +0000 (15:42 +0000)]
Ignore redundant constraints
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42397
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Thu, 27 Sep 2007 14:12:54 +0000 (14:12 +0000)]
Build the correct range for loops with unusual bounds. Fix from Jay Foad.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42394
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Thu, 27 Sep 2007 08:47:31 +0000 (08:47 +0000)]
No, really, it *is* SSSE3. ;-)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42393
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Thu, 27 Sep 2007 08:24:36 +0000 (08:24 +0000)]
SSSE3 -> SSE3. Reported by Alex Kellett.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42392
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Thu, 27 Sep 2007 08:24:02 +0000 (08:24 +0000)]
Grammer fix reported by Alex Kellett.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42391
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 07:35:39 +0000 (07:35 +0000)]
Silence a compiler warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42389
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 07:29:27 +0000 (07:29 +0000)]
Boogs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42388
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 07:09:03 +0000 (07:09 +0000)]
Be smarter about which node to force schedule. Reduce # of duplications + copies; Added statistics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42387
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Thu, 27 Sep 2007 02:47:27 +0000 (02:47 +0000)]
Remove debugging.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42385
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 27 Sep 2007 00:25:29 +0000 (00:25 +0000)]
Backtracking only when it won't create a cycle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42384
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 26 Sep 2007 23:20:33 +0000 (23:20 +0000)]
Make temporaries explicit to avoid premature
destruction of compiler-created ones.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42383
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Wed, 26 Sep 2007 22:44:45 +0000 (22:44 +0000)]
Updating LLVM.xcodeproj.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42382
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 26 Sep 2007 21:38:03 +0000 (21:38 +0000)]
Oops. Forgot this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42377
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 26 Sep 2007 21:36:17 +0000 (21:36 +0000)]
- Move getPhysicalRegisterRegClass() from ScheduleDAG to MRegisterInfo.
- Added ability to emit cross class register copies to the BBRU scheduler.
- More aggressive backtracking.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42375
91177308-0d34-0410-b5e6-
96231b3b80d8
Neil Booth [Wed, 26 Sep 2007 21:35:05 +0000 (21:35 +0000)]
Whitespace cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42374
91177308-0d34-0410-b5e6-
96231b3b80d8
Neil Booth [Wed, 26 Sep 2007 21:33:42 +0000 (21:33 +0000)]
Whitespace and compiler warning cleanup.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42373
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 26 Sep 2007 21:31:07 +0000 (21:31 +0000)]
- Added MRegisterInfo::getCrossCopyRegClass() hook. For register classes where reg to reg copies are not possible, this returns another register class which registers in the specified register class can be copied to (and copy back from).
- X86 copyRegToReg() now supports copying between EFLAGS and GR32 / GR64 registers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42372
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 26 Sep 2007 21:28:00 +0000 (21:28 +0000)]
Some assemblers do not recognize aliases pushfd, pushfq, popfd, and popfq. Just emit them as pushf and popf.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42371
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 26 Sep 2007 21:12:10 +0000 (21:12 +0000)]
Modernize fabs.ll, add long double. Add tests
for direct codegen of fsin/fcos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42369
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 26 Sep 2007 21:10:55 +0000 (21:10 +0000)]
Enable codegen for long double abs, sin, cos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42368
91177308-0d34-0410-b5e6-
96231b3b80d8
Gordon Henriksen [Wed, 26 Sep 2007 20:56:12 +0000 (20:56 +0000)]
Added C and Ocaml bindings for functions, basic blocks, and
instruction creation. No support yet for instruction introspection.
Also eliminated allocas from the Ocaml bindings for portability,
and avoided unnecessary casts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42367
91177308-0d34-0410-b5e6-
96231b3b80d8