David Greene [Wed, 23 Dec 2009 20:43:58 +0000 (20:43 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92040
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 20:34:27 +0000 (20:34 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92039
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 20:20:46 +0000 (20:20 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92037
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 23 Dec 2009 20:13:44 +0000 (20:13 +0000)]
Remove an XFAIL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92036
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 20:10:59 +0000 (20:10 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92035
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 20:03:58 +0000 (20:03 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92034
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 19:51:44 +0000 (19:51 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92033
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 19:45:49 +0000 (19:45 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92032
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 19:27:59 +0000 (19:27 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92029
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 19:21:19 +0000 (19:21 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92026
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 19:15:13 +0000 (19:15 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92024
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 23 Dec 2009 19:12:50 +0000 (19:12 +0000)]
Alternative fix to make sure that the extern declarations used by
DynamicLibrary::SearchForAddressOfSymbol refer to declarations in the
global namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92023
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 23 Dec 2009 19:04:10 +0000 (19:04 +0000)]
Revert 92020 until I figure out a more portable fix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92021
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 23 Dec 2009 18:56:27 +0000 (18:56 +0000)]
Move the extern symbol declarations outside of
DynamicLibrary::SearchForAddressOfSymbol and force them to have "C"
linkage.
Interestingly, GCC treats the block-scoped "extern" declarations we
previously had as if they were extern "C" declarations (or, at least,
were in the global namespace), so that GCC bug papered over this LLVM
bug. Clang and EDG get the linkage correct; this new variant seems to
work for both GCC and Clang.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92020
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 23 Dec 2009 18:27:13 +0000 (18:27 +0000)]
Fix another -Wmismatched-tags warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92017
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 18:25:37 +0000 (18:25 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92016
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 17:55:11 +0000 (17:55 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92013
91177308-0d34-0410-b5e6-
96231b3b80d8
Nuno Lopes [Wed, 23 Dec 2009 17:48:10 +0000 (17:48 +0000)]
move a few more symbols to .rodata
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92011
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 17:24:22 +0000 (17:24 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92006
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 17:18:22 +0000 (17:18 +0000)]
Convert debug messages to use dbgs(). Generally this means
s/errs/dbgs/g except for certain special cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92005
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 23 Dec 2009 17:05:07 +0000 (17:05 +0000)]
Fix struct/class mismatch for LTOModule and LTOCodeGenerator, detected by Clang
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92004
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Wed, 23 Dec 2009 17:03:46 +0000 (17:03 +0000)]
De-bork CMake build
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92003
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 16:39:06 +0000 (16:39 +0000)]
Provide dbgs(), a circular-buffering debug output stream. By default it
simply passes output to errs(). If -debug-buffer-size=N is set N > 0,
dbgs() buffers its output until program termination and dumps the last N
characters sent to it. This is handy when debugging very large inputs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92002
91177308-0d34-0410-b5e6-
96231b3b80d8
David Greene [Wed, 23 Dec 2009 16:08:15 +0000 (16:08 +0000)]
Add circular_raw_ostream, which buffers its output in a circular queue
and outputs it when explicitly flushed. The intent is to use it in
situations such as debug output logging where a signal handler can take
care of flushing the buffer at program termination.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92001
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Wed, 23 Dec 2009 12:50:03 +0000 (12:50 +0000)]
Make it easier to regenerate docs when srcdir != objdir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92000
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Wed, 23 Dec 2009 12:49:51 +0000 (12:49 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91999
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Wed, 23 Dec 2009 12:49:41 +0000 (12:49 +0000)]
Cosmetic issue: more consistent naming.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91998
91177308-0d34-0410-b5e6-
96231b3b80d8
Mikhail Glushenkov [Wed, 23 Dec 2009 12:49:30 +0000 (12:49 +0000)]
Allow (set_option SwitchOption, true).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91997
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Wed, 23 Dec 2009 11:19:09 +0000 (11:19 +0000)]
Reapply 91904.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91996
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Wed, 23 Dec 2009 10:56:02 +0000 (10:56 +0000)]
Added missing patterns for subtract instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91995
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Wed, 23 Dec 2009 10:35:24 +0000 (10:35 +0000)]
deleting empty file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91994
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Wed, 23 Dec 2009 09:46:01 +0000 (09:46 +0000)]
Reverting back 91904.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91993
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 23 Dec 2009 07:32:51 +0000 (07:32 +0000)]
Use more sensible type for flags in asms. PR 5570.
Patch by Sylve`re Teissier (sorry, ASCII only).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91988
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 23 Dec 2009 02:51:48 +0000 (02:51 +0000)]
Update objectsize intrinsic and associated dependencies. Fix
lowering code and update testcases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91979
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 23 Dec 2009 01:46:40 +0000 (01:46 +0000)]
really remove the instruction, don't just comment it out
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91976
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 23 Dec 2009 01:45:04 +0000 (01:45 +0000)]
completely eliminate the MOV16r0 'instruction'. The only
interesting part of this is the divrem changes, which are
already tested by CodeGen/X86/divrem.ll.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91975
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Wed, 23 Dec 2009 01:32:29 +0000 (01:32 +0000)]
More fixes for Visual C++. Replaced several very small
static inline functions with macros.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91973
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 23 Dec 2009 01:30:26 +0000 (01:30 +0000)]
stop pattern matching 16-bit zero's of a register to MOV16r0,
instead use the appropriate subreggy thing. This generates identical
code on some large apps (thanks to Evan's cross class coalescing
stuff he did back in july). This means that MOV16r0 can go away
completely in the future soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91972
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 23 Dec 2009 01:28:19 +0000 (01:28 +0000)]
Remove superfluous SDNode ordering.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91971
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Wed, 23 Dec 2009 00:58:02 +0000 (00:58 +0000)]
Disable JITTest.FunctionIsRecompiledAndRelinked on ARM where it's not
implemented.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91963
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 23 Dec 2009 00:47:20 +0000 (00:47 +0000)]
Remove node ordering from inline asm nodes. It's not needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91961
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Wed, 23 Dec 2009 00:45:10 +0000 (00:45 +0000)]
Suppress compiler warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91959
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 23 Dec 2009 00:44:51 +0000 (00:44 +0000)]
Remove node ordering from VA nodes. It's not needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91958
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Wed, 23 Dec 2009 00:29:49 +0000 (00:29 +0000)]
Update docs for bitcode changes. For object size checking we won't
work with partial objects so just count the type as a boolean. Update
appropriately.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91954
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 23 Dec 2009 00:28:23 +0000 (00:28 +0000)]
Revert r91949 r91942 and r91936.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91953
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Wed, 23 Dec 2009 00:18:40 +0000 (00:18 +0000)]
restore 'make update' functionality by not ignoring 'clang' here
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91950
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 23 Dec 2009 00:05:09 +0000 (00:05 +0000)]
Finish up node ordering in ExpandNode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91949
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 22 Dec 2009 23:54:54 +0000 (23:54 +0000)]
Add coalescer asserts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91945
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 22 Dec 2009 23:54:44 +0000 (23:54 +0000)]
Add a SPR register class to the ARM target.
Certain Thumb instructions require only SP (e.g. tSTRspi).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91944
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Tue, 22 Dec 2009 23:47:23 +0000 (23:47 +0000)]
Partially revert r91626. Materializing extra functions to determine whether
they're available_externally broke VMKit, which was relying on the fact that
functions would only be materialized when they were first called. We'll have
to wait for http://llvm.org/PR5737 to really fix this.
I also added a test for one of the F->isDeclaration() calls which wasn't
covered by anything else in the test suite.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91943
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 23:44:56 +0000 (23:44 +0000)]
Assign ordering to nodes created in ExpandNode. Only roughly 1/2 of the function
is finished.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91942
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeffrey Yasskin [Tue, 22 Dec 2009 23:18:18 +0000 (23:18 +0000)]
Fix a crash in JIT::recompileAndRelinkFunction(). It doesn't pass the MCI
argument to runJITOnFunction(), which caused a null pointer dereference at
every call.
Patch by Gianluca Guida!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91939
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 22:53:39 +0000 (22:53 +0000)]
Assign ordering to SDNodes in PromoteNode. Also fixing a subtle bug where BSWAP
was using "Tmp1" in the first getNode call instead of Node->getOperand(0).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91936
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Tue, 22 Dec 2009 22:51:40 +0000 (22:51 +0000)]
Removed the "inline" keyword from the disassembler decoder,
because the Visual C++ build does not build .c files as C99
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91935
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 22:50:29 +0000 (22:50 +0000)]
rename HexDisassembler -> Disassembler, it works on any input
integer encoding (0123,
0b10101, 42, etc).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91934
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 22:47:43 +0000 (22:47 +0000)]
just discard the debug output from the disassembler.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91933
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 22 Dec 2009 22:37:23 +0000 (22:37 +0000)]
Add testcase for PR5703
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91931
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 22 Dec 2009 21:52:27 +0000 (21:52 +0000)]
Remove minimal CFG sanity checks from verifier.
These checks would often trigger on unreachable statements inserted by
bugpoint, leading it astray.
It would be nice if we could distinguish unreachable blocks from errors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91923
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 22 Dec 2009 21:48:20 +0000 (21:48 +0000)]
Allow explicit %reg0 operands beyond what the .td file describes.
ARM uses these to indicate predicates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91922
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 21:35:02 +0000 (21:35 +0000)]
Allow 0 as an order number. Don't assign an order to formal arguments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91920
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Tue, 22 Dec 2009 21:12:55 +0000 (21:12 +0000)]
Fixes to the X86 disassembler:
Made LEA memory operands emit only 4 MCInst operands.
Made the scale operand equal 1 for instructions that have no
SIB byte.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91919
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 22 Dec 2009 20:11:00 +0000 (20:11 +0000)]
Restore snprintf weirdness for VCPP only
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91918
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 19:33:28 +0000 (19:33 +0000)]
Fix the Convert to scalar to not insert dead loads in the store case. The
load is needed when we have a small store into a large alloca (at which
point we get a load/insert/store sequence), but when you do a full-sized
store, this load ends up being dead.
This dead load is bad in really large nasty testcases where the load ends
up causing mem2reg to insert large chains of dependent phi nodes which only
ADCE can delete. Instead of doing this, just don't insert the dead load.
This fixes rdar://
6864035
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91917
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 19:23:33 +0000 (19:23 +0000)]
fix some fixme's by using twines
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91916
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Tue, 22 Dec 2009 18:49:55 +0000 (18:49 +0000)]
Use proper move instructions. Make the verifier happy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91914
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 22 Dec 2009 18:34:19 +0000 (18:34 +0000)]
Report an error for bad inline assembly, where the value passed for an
"indirect" operand is not a pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91913
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 22 Dec 2009 17:47:23 +0000 (17:47 +0000)]
Remove target attribute break-sse-dep. Instead, do not fold load into sse partial update instructions unless optimizing for size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91910
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 22 Dec 2009 17:25:11 +0000 (17:25 +0000)]
Include based on the current path, since we already -I the X86 target's path. Fixes CMake build
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91908
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Tue, 22 Dec 2009 14:25:37 +0000 (14:25 +0000)]
While converting one of the operands to a memory operand, we need to check if it is Legal and does not result into a cyclic dep.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91904
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 07:03:21 +0000 (07:03 +0000)]
specify what is invalid about it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91901
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 07:01:12 +0000 (07:01 +0000)]
specify a triple to use, fixing the test on non-x86-64 hosts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91900
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:58:29 +0000 (06:58 +0000)]
reject invalid input with a caret, e.g.:
simple-tests.txt:16:1: error: invalid instruction
0xff 0xff
^
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91898
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Tue, 22 Dec 2009 06:57:14 +0000 (06:57 +0000)]
Generalize SROA to allow the first index of a GEP to be non-zero. Add a
missing check that an array reference doesn't go past the end of the array,
and remove some redundant checks for in-bound array and vector references
that are no longer needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91897
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:56:51 +0000 (06:56 +0000)]
various cleanups, make the disassemble reject lines with too much
data on them, for example:
addb %al, (%rax)
simple-tests.txt:11:5: error: excess data detected in input
0 0 0 0 0
^
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91896
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:45:48 +0000 (06:45 +0000)]
If you thought that it didn't make sense for the disassembler
to not produce caret diagnostics, you were right!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91895
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:37:58 +0000 (06:37 +0000)]
rewrite the file parser for the disassembler, implementing support for
comments. Also, check in a simple testcase for the disassembler,
including a test for r91864
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91894
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:24:00 +0000 (06:24 +0000)]
don't crash on blank lines, rename some variables.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91892
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:07:30 +0000 (06:07 +0000)]
Implement PR5795 by merging duplicated return blocks. This could go further
by merging all returns in a function into a single one, but simplifycfg
currently likes to duplicate the return (an unfortunate choice!)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91890
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 06:04:26 +0000 (06:04 +0000)]
convert to filecheck
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91889
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 04:47:41 +0000 (04:47 +0000)]
don't run GVN at -O1, GCC doesn't do it's equivalent at that optimization level.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91886
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 04:25:02 +0000 (04:25 +0000)]
The phi translated pointer can be computed when returning a partially cached result
instead of stored. This reduces memdep memory usage, and also eliminates a bunch of
weakvh's. This speeds up gvn on gcc.c-torture/
20001226-1.c from 23.9s to 8.45s (2.8x)
on a different machine than earlier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91885
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 02:10:19 +0000 (02:10 +0000)]
Add more plumbing. This time in the LowerArguments and "get" functions which
return partial registers. This affected the back-end lowering code some.
Also patch up some places I missed before in the "get" functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91880
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Tue, 22 Dec 2009 02:07:42 +0000 (02:07 +0000)]
Changed REG_* to MODRM_REG_* to avoid conflicts
with symbols in AuroraUX's global namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91879
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Tue, 22 Dec 2009 01:41:37 +0000 (01:41 +0000)]
Fix some may-be-uninitialized var warnings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91878
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 01:38:23 +0000 (01:38 +0000)]
fix unit test that I broke.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91877
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 01:25:10 +0000 (01:25 +0000)]
Add SDNode ordering to inlined asm and VA functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91876
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Tue, 22 Dec 2009 01:23:51 +0000 (01:23 +0000)]
Whitespace fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91875
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 01:17:43 +0000 (01:17 +0000)]
types don't need atomic inc/dec, they are local to an llvmcontext.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91873
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 01:11:43 +0000 (01:11 +0000)]
Adding more assignment of ordering to SDNodes. This time in the "call" and
generic copy functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91872
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Tue, 22 Dec 2009 01:11:26 +0000 (01:11 +0000)]
Fixed library dependencies between the X86 disassembler and
X86 codegen that were causing circular symbol dependencies.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91871
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 01:00:32 +0000 (01:00 +0000)]
avoid calling extractMallocCall when it's obvious we don't have
a call. This speeds up memdep ~1.5%
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91869
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 00:51:57 +0000 (00:51 +0000)]
comment fix: weakvh -> tracking vh
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91867
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 00:50:32 +0000 (00:50 +0000)]
Add ordering of SDNodes to LowerCallTo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91866
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 22 Dec 2009 00:44:05 +0000 (00:44 +0000)]
print pcrel immediates as signed values instead of unsigned so that we
get things like this out of the disassembler:
0x100000ecb: callq -96
instead of:
0x100000ecb: callq
4294967200
rdar://
7491123
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91864
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 00:40:51 +0000 (00:40 +0000)]
Now add ordering to SDNodes created by the massive intrinsic lowering function.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91863
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Tue, 22 Dec 2009 00:12:37 +0000 (00:12 +0000)]
To make things interesting, I added MORE code to set the ordering of
SDNodes. This time in the load/store and limited-precision code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91860
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Tue, 22 Dec 2009 00:11:50 +0000 (00:11 +0000)]
Changed slot index ranges for MachineBasicBlocks to be exclusive of endpoint.
This fixes an in-place update bug where code inserted at the end of basic blocks may not be covered by existing intervals which were live across the entire block. It is also consistent with the way ranges are specified for live intervals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91859
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 21 Dec 2009 23:47:40 +0000 (23:47 +0000)]
Add more plumbing to assign ordering to SDNodes. Have the "getValue" method
assign the ordering when called. Combine some of the ordering assignments to
keep things simple.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91857
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 21 Dec 2009 23:27:57 +0000 (23:27 +0000)]
Add suggested parentheses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91853
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 21 Dec 2009 23:15:48 +0000 (23:15 +0000)]
Add a fastpath to Load GVN to special case when we have exactly one dominating
load to avoid even messing around with SSAUpdate at all. In this case (which
is very common, we can just use the input value directly).
This speeds up GVN time on gcc.c-torture/
20001226-1.c from 36.4s to 16.3s,
which still isn't great, but substantially better and this is a simple speedup
that applies to lots of different cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@91851
91177308-0d34-0410-b5e6-
96231b3b80d8