Commit Graph

49782 Commits

Author SHA1 Message Date
Daniel Dunbar
29ac59f25c Add CodeGenFunction::EmitDummyBlock for marking places where we make
"dummy" blocks (blocks just used to make sure we have a place to dump
code to).

llvm-svn: 59022
2008-11-11 04:34:23 +00:00
Daniel Dunbar
05e629aec6 Remove CodeGenFunction::StartBlock.
- Was confusing and only used in one small part of the code.

llvm-svn: 59020
2008-11-11 04:12:31 +00:00
Daniel Dunbar
471d9ddeab These tests have no needed to redirect stderr to stdout.
llvm-svn: 59019
2008-11-11 04:09:47 +00:00
Scott Michel
aab89ca749 Unbreak the buildbot and back out (inadvertant) casting edits in CellSPU
backend.

llvm-svn: 59018
2008-11-11 03:06:06 +00:00
Daniel Dunbar
75283ff38a Centralize basic block creation in CodeGenFunction::createBasicBlock.
- No functionality change.

llvm-svn: 59017
2008-11-11 02:29:29 +00:00
Evan Cheng
ac2af2fdb2 Encode VFP arithmetic instructions.
llvm-svn: 59016
2008-11-11 02:11:05 +00:00
Zhongxing Xu
deb7cac332 Fix StringLiteral print bug.
llvm-svn: 59015
2008-11-11 01:36:32 +00:00
Zhongxing Xu
f8b84b0def Add && to test command.
llvm-svn: 59014
2008-11-11 01:25:18 +00:00
Daniel Dunbar
e27d7b5530 Fix Release-Asserts warning.
llvm-svn: 59013
2008-11-11 01:16:00 +00:00
Devang Patel
53b39b5467 Cleanup debug info. assocated with deleted instructions.
llvm-svn: 59012
2008-11-11 00:54:10 +00:00
Devang Patel
dc6699e82f Add utility routines to remove dead debug info.
llvm-svn: 59011
2008-11-11 00:53:02 +00:00
Bill Wendling
6fcefa065e r59009 broke these tests. XFAIL for now.
llvm-svn: 59010
2008-11-11 00:36:10 +00:00
Scott Michel
abad22cf45 CellSPU: Fix bug 3606, as well as some ongoing work.
llvm-svn: 59009
2008-11-10 23:43:06 +00:00
Bill Wendling
cfa3e287bb Small simplification. Use the iterator already present as the insertion point.
llvm-svn: 59008
2008-11-10 23:38:59 +00:00
Evan Cheng
b172c66af3 Comments and indentation.
llvm-svn: 59007
2008-11-10 23:26:16 +00:00
Evan Cheng
02771dc473 Correct PIC function stub codegen.
llvm-svn: 59006
2008-11-10 23:14:47 +00:00
Oscar Fuentes
54c1dedd42 CMake: Fixed cross-compiling.
`clean' makefile target removes add-hoc directory created for building
the native tablegen.

llvm-svn: 59005
2008-11-10 22:09:59 +00:00
Dan Gohman
d3b33fea65 Fix indentation.
llvm-svn: 59004
2008-11-10 22:09:58 +00:00
Bill Wendling
b85755c829 Temporarily revert r58979 and related patch. It's causing a failure in X86 bootstrap:
Comparing stages 2 and 3
warning: ./cc1-checksum.o differs
warning: ./cc1obj-checksum.o differs
warning: ./cc1objplus-checksum.o differs
warning: ./cc1plus-checksum.o differs
Bootstrap comparison failure!
./alias.o differs
./alloc-pool.o differs
./attribs.o differs
./bb-reorder.o differs
./bitmap.o differs
./build/errors.o differs
./build/genattrtab.o differs
./build/genautomata.o differs
./build/genemit.o differs
./build/genextract.o differs
...

-bw

llvm-svn: 59003
2008-11-10 21:22:06 +00:00
Bill Wendling
747f59f0f7 - Make sure that we don't over-increment the iterator when going through the
basic blocks.
- Minor code clean-up.

llvm-svn: 59002
2008-11-10 21:13:10 +00:00
Mon P Wang
58fb9135e2 Added CONVERT_RNDSAT (conversion with rounding and saturation) SDNode to
support targets that support these conversions. Users should avoid using
this node as the current targets don't generating code for it.

llvm-svn: 59001
2008-11-10 20:54:11 +00:00
Douglas Gregor
cd695e500d Basic support for taking the address of an overloaded function
llvm-svn: 59000
2008-11-10 20:40:00 +00:00
Steve Naroff
74eefb5722 Update VC++ project file.
llvm-svn: 58997
2008-11-10 20:03:21 +00:00
Steve Naroff
23394ab63f Update VC++ project file.
llvm-svn: 58996
2008-11-10 20:02:45 +00:00
Devang Patel
d0ce981372 If the sign of exit condition and split condition does not match
then do not split loop index.

llvm-svn: 58995
2008-11-10 19:48:34 +00:00
Duncan Sands
ddacbb39ab Fix PR2667: add soft float support for sint_to_fp/uint_to_fp
where the argument is an apint, or smaller than the minimum
size for which there is a libcall (i32). 

llvm-svn: 58994
2008-11-10 17:36:26 +00:00
Duncan Sands
13b2e3634b Tweak some comments.
llvm-svn: 58993
2008-11-10 17:31:56 +00:00
Duncan Sands
7da4b44dd1 Small cleanups. No functionality change intended!
llvm-svn: 58992
2008-11-10 17:29:56 +00:00
Duncan Sands
d5b53e1c6c When promoting the result of fp_to_uint/fp_to_sint,
inform the optimizers that the result must be zero/
sign extended from the smaller type.  For example,
if a fp to unsigned i16 is promoted to fp to i32,
then we are allowed to assume that the extra 16 bits
are zero (because the result of fp to i16 is undefined
if the result does not fit in an i16).  This is
quite aggressive, but should help the optimizers
produce better code.  This requires correcting a
test which thought that fp_to_uint is some kind
of truncation, which it is not: in the testcase
(which does fp to i1), either the fp value converts
to 0 or 1 or the result is undefined, which is
quite different to truncation.

llvm-svn: 58991
2008-11-10 17:28:30 +00:00
Douglas Gregor
d36ed56c52 Remove an out-of-date FIXME
llvm-svn: 58990
2008-11-10 17:01:38 +00:00
Douglas Gregor
49de5340c0 Improve parser error recovery after a constructor initializer
llvm-svn: 58989
2008-11-10 16:59:40 +00:00
Douglas Gregor
f52cdd0124 Allow user-defined conversions during reference binding
llvm-svn: 58988
2008-11-10 16:14:15 +00:00
Douglas Gregor
1cd48f1645 Don't create a typedef for the injected-class-name
llvm-svn: 58987
2008-11-10 14:41:22 +00:00
Douglas Gregor
6cf0806e75 Some cleanups to the declaration/checking of overloaded operators in C++. Thanks to Sebastian for the review
llvm-svn: 58986
2008-11-10 13:38:07 +00:00
Zhongxing Xu
bba5c7c629 Add pretty printing to StringRegion.
llvm-svn: 58985
2008-11-10 13:05:26 +00:00
Duncan Sands
0a758fae91 Work around PR1000.
llvm-svn: 58984
2008-11-10 10:05:09 +00:00
Zhongxing Xu
7be05ed6b8 Add region store model to path-sensitive testing.
llvm-svn: 58983
2008-11-10 09:43:12 +00:00
Zhongxing Xu
18d6fd45de Implement RegionStoreManager::RemoveDeadBindings(). This prunes several false warning caused by removal of symbolic constraints. Currently we just mark all symbols live. Further optimization for dead binding removal needed.
llvm-svn: 58982
2008-11-10 09:39:04 +00:00
Anton Korobeynikov
8e58c52b37 Proper way of doing llvm canadian-cross compilation.
Patch by Jim Grosbach!

llvm-svn: 58981
2008-11-10 07:33:13 +00:00
Dale Johannesen
23be3fd970 Reenable test.
llvm-svn: 58980
2008-11-10 07:30:32 +00:00
Dale Johannesen
671743369c Really fix testb optimization on big-endian.
Fixes ppc32 bootstrap.

llvm-svn: 58979
2008-11-10 07:16:42 +00:00
Bill Wendling
7ef7314d1a Third time's a charm.
The previous patches didn't match correctly. Also, we need to make sure that
the conditional is the same before doing the transformation.

llvm-svn: 58978
2008-11-10 06:59:06 +00:00
Chris Lattner
b5d21a4d03 don't preserve names on IR instructions. This matches llvm-gcc's behavior and
speeds up the compiler by ~8% at -emit-llvm -O0.

llvm-svn: 58977
2008-11-10 06:31:46 +00:00
Chris Lattner
494e4a6e3e sort files add a missed header to the project.
llvm-svn: 58976
2008-11-10 06:31:19 +00:00
Chris Lattner
f61801403d Fix even more bugs in debug info support:
1. emit proper debug info for forward decls of structs.
2. emit DW_TAG_member nodes around members of a field like llvm-gcc does.

This slows down debug info generation, but is required for correctness.

llvm-svn: 58973
2008-11-10 06:10:01 +00:00
Chris Lattner
affb37337f reimplement debug info generation in terms of DebugInfo.h instead of
using MachineModuleInfo.  This runs at about the same speed as the old
code, but fixes a bunch of bugs and is simpler and shorter.

llvm-svn: 58971
2008-11-10 06:08:34 +00:00
Chris Lattner
2a09239563 final edits
llvm-svn: 58966
2008-11-10 05:40:34 +00:00
Zhongxing Xu
1c31dbe417 Print integer value instead of raw pointer. This is a hack to be fixed by migrating the output in analyzer to llvm::raw_ostream.
llvm-svn: 58965
2008-11-10 05:00:06 +00:00
Mon P Wang
25f0106fd9 Added support for the following definition of shufflevector
<result> = shufflevector <n x <ty>> <v1>, <n x <ty>> <v2>, <m x i32> <mask> 

llvm-svn: 58964
2008-11-10 04:46:22 +00:00
Chris Lattner
09487cd437 eliminate a couple more uses of utohexstr.
llvm-svn: 58963
2008-11-10 04:35:24 +00:00