Dan Gohman
beca6896b9
Change printInstruction to not print a trailing newline. Value::dump
...
always adds a newline, so this fixes Value::dump printing an
extra blank line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75481 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 18:27:59 +00:00
Dan Gohman
d6a2aab53e
Add an optional optimization to FoldingSet to allow ID values to be
...
stored rather than recomputed on each bucket traversal.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75480 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 18:25:44 +00:00
Bob Wilson
d2559bf3f3
Fix comment typos.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75479 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 18:11:36 +00:00
Chris Lattner
a2f55dd388
factor the 'optimized sort' code out into a static helper function
...
and use it from one more place. Patch by Jakub Staszak!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75478 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 17:20:05 +00:00
Chris Lattner
6fbc1969e9
Move the re-sort of invalidated NonLocalPointerDeps cache earlier
...
so that all code paths get it. PR4256 was about a case where the
phi translation loop would find all preds in the Visited cache, so
it could get by without re-sorting the NonLocalPointerDeps cache.
Fix this by resorting it earlier, there is no reason not to do this.
This patch inspired by Jakub Staszak's patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75476 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 17:14:23 +00:00
David Greene
191cf2851b
Make some more changes suggested by Chris. Manipulators go away.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75472 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 16:49:27 +00:00
Sanjiv Gupta
b134bc31be
Added a fixme for platform specific GetDirSeparator().
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75461 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 10:58:55 +00:00
Sanjiv Gupta
f935dcc26a
allow mcc16 users to specify --save-temps even though it is hidden by mcc16.
...
link libstd.so with llvm-ld by default with all the programs user is trying to build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75460 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 10:56:29 +00:00
Daniel Dunbar
7a80f5f825
Match declaration to definition (missed a few).
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75456 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 06:04:06 +00:00
Daniel Dunbar
ac27baa8b1
Tweak svn:ignore
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75455 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 06:00:39 +00:00
Daniel Dunbar
89e12a1b2e
Match declaration to definition.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75454 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 06:00:13 +00:00
Nick Lewycky
56a96e76ae
Fix build on Linux.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75453 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 05:49:04 +00:00
Daniel Dunbar
4892cb761e
Fix some non-sensical code.
...
- This makes it more like other similar code in Archive handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75452 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 05:29:34 +00:00
Daniel Dunbar
a53902b258
Switch to raw_ostream.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75451 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 05:27:30 +00:00
Lang Hames
fc1b75f7c8
Removed some junk code that snuck in to an earlier commit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75450 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 05:01:19 +00:00
Nick Lewycky
780905e9f9
Fix an error in ConstantRange::getSignedMax on wrapped ranges. Thanks once
...
again to Daniel Dunbar and KLEE!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75449 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 04:50:21 +00:00
Nick Lewycky
ff84de767a
'i8 full-range' sign extended to i16 should equal [-128, 128) not [-128, 127).
...
Found by Daniel Dunbar and KLEE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75448 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 04:17:23 +00:00
Owen Anderson
0a5372ed3e
Begin the painful process of tearing apart the rat'ss nest that is Constants.cpp and ConstantFold.cpp.
...
This involves temporarily hard wiring some parts to use the global context. This isn't ideal, but it's
the only way I could figure out to make this process vaguely incremental.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75445 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 04:09:18 +00:00
Nick Lewycky
f1db120d04
Multiply was very wrong for wrapped ranges. This supplies a half-fix that will
...
generally return Full on all wrapped inputs. "Fixes" PR4545.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75444 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 03:27:41 +00:00
Nick Lewycky
cf9e07dea8
Fix a bug summing two full sets. The overflow checking doesn't handle sets as
...
large as the full set, only those one size smaller. Thanks to Daniel Dunbar
who found this bug using Klee!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75443 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-13 02:49:08 +00:00
Daniel Dunbar
deb052a3dd
Match declaration to definition.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75440 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 23:50:34 +00:00
Daniel Dunbar
460d16e126
Match declaration to definition.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75438 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 22:46:08 +00:00
Chris Lattner
4cef7db13f
remove tests for removed intrinsics.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75433 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 21:30:06 +00:00
Chris Lattner
eaff524670
remove llvm.part.set.* and llvm.part.select.*. They have never been
...
implemented in codegen, have no frontend to generate them, and are
better implemented with pattern matching (like the ppc backend does
to generate rlwimi/rlwinm etc).
PR4543
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75430 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 21:08:53 +00:00
Daniel Dunbar
cae9a3f51d
Use llvm_report_error, not llvm_unreachable.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75429 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 21:01:49 +00:00
Torok Edwin
3b30a2bdca
Mention that llvm_report_error() does not return.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75428 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 21:01:44 +00:00
Daniel Dunbar
02e7313bf9
Add an LLVM API change.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75426 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 20:41:27 +00:00
Daniel Dunbar
a00e85c9b1
Improve sys::Path::makeAbsolute on Win32.
...
- Patch by Viktor Kutuzov!
- Minor tweak by me to add llvm_unreachable calls on FIXMEd error paths.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75424 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 20:23:56 +00:00
Torok Edwin
f36892335b
Fix assert(0) conversion, as suggested by Chris.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75423 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 20:07:01 +00:00
Daniel Dunbar
614be08dd6
Clarify a FIXME.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75422 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 19:45:34 +00:00
Chris Lattner
0f55014430
"UNIX paths can contain non-ASCII characters, so Path::isValid() should not reject paths with such characters in them. The attached patch removes the check from Path::isValid()."
...
patch by Benjamin Kramer!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75421 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 19:01:16 +00:00
Jakob Stoklund Olesen
c8ca3ae27b
Implement support for promotion of AND/OR/XOR on integer types.
...
The blackfin processor has a legal i16 type, but only logic operations on i32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75419 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 18:10:18 +00:00
Jakob Stoklund Olesen
9a4ba45f4c
Fix types in PromoteNode handling of CTPOP and friends.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75418 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 17:43:20 +00:00
Jakob Stoklund Olesen
ee787ff01a
Add CCIfSRet calling convention predicate.
...
The blackfin calling convention uses a different register for sret arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75417 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 13:15:50 +00:00
Torok Edwin
29fd056d81
Remove extra \n from LLVM_UNREACHABLE calls.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75416 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 07:15:17 +00:00
Nick Lewycky
7ab2eb4a80
Make this clearer for the mathematically inclined. Thanks to Duncan Sands for
...
going over the text!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75414 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 05:44:08 +00:00
Nick Lewycky
956daf0f7f
Implement udiv for ConstantRanges.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75413 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 05:18:18 +00:00
Bill Wendling
69600cae95
Temporarily revert r75408. It appears to break the Apple-style builds:
...
x86_64-apple-darwin10-gcc -c -g -O2 -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wmissing-format-attribute -mdynamic-no-pic -DHAVE_CONFIG_H -I. -I. -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/. -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/../include -I./../intl -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/../libcpp/include -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/../libdecnumber -I../libdecnumber -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmCore.roots/llvmCore~dst/Developer/usr/local/include -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmCore.roots/llvmCore~obj/src/include -DENABLE_LLVM -I/Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmCore.roots/llvmCore~dst/Developer/usr/local/include -D_DEBUG -D_GNU_SOURCE -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -DLLVM_VERSION_INFO='"9999"' -DBUILD_LLVM_APPLE_STYLE /Volumes/Sandbox/Buildbot/llvm/build.llvm-gcc-x86_64-darwin10-selfhost/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/tree-ssa-alias.c -o tree-ssa-alias.o
/var/tmp//ccJQ2JBT.s:4134:Incorrect register `%rcx' used with `l' suffix
make[2]: *** [tree-ssa-live.o] Error 1
make[2]: *** Waiting for unfinished jobs....
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75412 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 02:49:22 +00:00
Nick Lewycky
b2dcff443c
This is not overly conservative.
...
Some = [10, 2730). A subset of that is [1024..2048) which covers every possible
10-bit pattern.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75411 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 02:28:40 +00:00
Nick Lewycky
2ff893f486
Implement ConstantRange::multiply based on the code in LoopVR.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75410 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 02:19:05 +00:00
Eli Friedman
6db1495558
Remove check which is duplicated in
...
InstCombiner::visitSelectInstWithICmp.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75409 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 02:00:05 +00:00
Chris Lattner
a6d16ae432
eliminate MOV64r0 in favor of a Pat<> pattern. This is only nontrivial because
...
the div lowering code explicitly references it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75408 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 00:47:55 +00:00
Chris Lattner
0df3b369a5
add nounwind
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75407 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 00:46:16 +00:00
Chris Lattner
b927ca813b
be explicit about making comments real sentences.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75406 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-12 00:10:24 +00:00
Nick Lewycky
f5c21ecfa6
Darwin prepends an _ to internal globals, Linux doesn't.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75405 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 23:48:59 +00:00
Chris Lattner
65a7a6f7a3
fix x86-64 static codegen to materialize the address of a global with movl instead
...
of lea. It is better for code size (and presumably efficiency) to use:
movl $foo, %eax
rather than:
leal foo, eax
Both give a nice zero extending "move immediate" instruction, the former is just
smaller. Note that global addresses should be handled different by the x86
backend, but I chose to follow the style already in place and add more fixme's.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75403 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 23:17:29 +00:00
Chris Lattner
14f7511f46
fix a bug in my cleanup patch
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75402 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 23:07:30 +00:00
Chris Lattner
2514278b83
comment cleanup, reduce nesting.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75398 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 22:50:33 +00:00
Chris Lattner
a3c8d38795
remove some dead patterns, WrapperRIP doesn't exist in -static mode
...
anymore, so these aren't needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75397 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 22:47:21 +00:00
Chris Lattner
39750254e1
silence vc++ warning.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75394 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-11 22:32:37 +00:00