Dan Gohman
33a9cef204
The LLVM Assembly Language Reference incorrectly stated that the
...
prefix used for dll{import,export} is _imp__; it is actually __imp_.
Patch by Mahadevan R!
llvm-svn: 62103
2009-01-12 21:35:55 +00:00
Dan Gohman
87bc800384
Fix the instructions to work even when PATH does not contain ".".
...
Thanks to Martin Geisse for pointing this out!
llvm-svn: 62102
2009-01-12 21:29:24 +00:00
Duncan Sands
dc020f9c3c
Rename getABITypeSize to getTypePaddedSize, as
...
suggested by Chris.
llvm-svn: 62099
2009-01-12 20:38:59 +00:00
Devang Patel
df31a7256d
Add DwarfWriter interface to mainipulate source location info.
...
( May be this info should be directly handled by the dwarf writer ? )
llvm-svn: 62096
2009-01-12 19:17:34 +00:00
Chris Lattner
ecbe933d6a
remove some dead options.
...
llvm-svn: 62095
2009-01-12 19:02:50 +00:00
Devang Patel
f033d53264
Clear debug info at the end of function processing.
...
llvm-svn: 62092
2009-01-12 18:48:36 +00:00
Devang Patel
5daa1abf25
There is no need to maintain separate labelid list in the dwarf writer. It is not a good idea.
...
llvm-svn: 62090
2009-01-12 18:41:00 +00:00
Rafael Espindola
6919ab4d05
Remove some dead code from the days llvm had type planes.
...
There might be more dead code, but with llvm-gcc bootstrap broken on linux x86-64 it is had to test :-(
llvm-svn: 62088
2009-01-12 15:53:25 +00:00
Evan Cheng
2adb5cfb48
Second test is only valid in 32-bit mode.
...
llvm-svn: 62084
2009-01-12 08:05:54 +00:00
Evan Cheng
0258874607
Test for r62076.
...
llvm-svn: 62077
2009-01-12 03:46:55 +00:00
Evan Cheng
b2c42c648d
Fix PR3241: Currently EmitCopyFromReg emits a copy from the physical register to a virtual register unless it requires an expensive cross class copy. That means we are only treating "expensive to copy" register dependency as physical register dependency.
...
Also future proof the scheduler to handle "normal" physical register dependencies. The code is not exercised yet.
llvm-svn: 62074
2009-01-12 03:19:55 +00:00
Owen Anderson
45cfef2cb6
More two-address fixes. This gets lua working with join-creation enabled.
...
llvm-svn: 62073
2009-01-12 03:10:40 +00:00
Chris Lattner
2089cd09ba
make tblgen autogenerate the nocapture intrinsics for
...
llvm.memcpy/memset/memmove. This allows removal of some
hackish code from basicaa.
llvm-svn: 62071
2009-01-12 02:41:37 +00:00
Chris Lattner
9d0a8770bd
add scaffolding to emit argument attributes. No functionality
...
change.
llvm-svn: 62067
2009-01-12 01:27:55 +00:00
Chris Lattner
49b7ee1b50
make tblgen emit the entire Intrinsic::getAttributes method,
...
not a random piece of it. No functionality change.
llvm-svn: 62066
2009-01-12 01:18:58 +00:00
Chris Lattner
9a3113aeb8
add nocapture attribute to llvm.mem* intrinsics and have tblgen
...
parse them. tblgen doesn't yet do anything with this info though.
llvm-svn: 62065
2009-01-12 01:12:03 +00:00
Dale Johannesen
f84685290a
Increase default inlining aggressiveness in partial
...
compensation for turning off gcc's inliner. This gets
us closer to the amount of inlining we were getting before.
It is not a win on everything, of course, but seems to
gain overall.
llvm-svn: 62058
2009-01-11 23:11:00 +00:00
Gabor Greif
9722023df8
drats! remove tabs
...
llvm-svn: 62056
2009-01-11 22:39:04 +00:00
Gabor Greif
1b9921af34
simplify CallSite helper class to not consult the Instruction's
...
opcode on each delegation.
Instead the information is cached on construction and the cached flag used thereafter.
Introduced two predicates: isCall and isInvoke.
llvm-svn: 62055
2009-01-11 22:33:22 +00:00
Chris Lattner
bc088218e6
Implement PR3313, and while I'm at it address a very FAQ.
...
llvm-svn: 62048
2009-01-11 20:53:49 +00:00
Chris Lattner
bd3c7c8b52
Duncan is nervous about undefinedness of % with negatives. I'm
...
not thrilled about 64-bit % in general, so rewrite to use * instead.
llvm-svn: 62047
2009-01-11 20:41:36 +00:00
Chris Lattner
b19151686f
do not generated GEPs into vectors where they don't already exist.
...
We should treat vectors as atomic types, not like arrays.
llvm-svn: 62046
2009-01-11 20:23:52 +00:00
Chris Lattner
171d2d474f
Make a couple of cleanups to the instcombine bitcast/gep
...
canonicalization transform based on duncan's comments:
1) improve the comment about %.
2) within our index loop make sure the offset stays
within the *type size*, instead of within the *abi size*.
This allows us to reason explicitly about landing in tail
padding and means that issues like non-zero offsets into
[0 x foo] types don't occur anymore.
llvm-svn: 62045
2009-01-11 20:15:20 +00:00
Nick Lewycky
93787d1262
Use the spiffy new getAlignmentFromAttrs function.
...
llvm-svn: 62039
2009-01-11 17:02:06 +00:00
Evan Cheng
e3108148e2
CheckForPhysRegDependency should not return copy cost. It's not used. No functionality change.
...
llvm-svn: 62036
2009-01-11 08:53:35 +00:00
Bill Wendling
8d069ef872
Fix naming of file.
...
llvm-svn: 62035
2009-01-11 01:25:51 +00:00
Dan Gohman
aaa679b270
Fix the example syntax for named sections.
...
llvm-svn: 62033
2009-01-11 00:40:00 +00:00
Evan Cheng
8e7d88b916
This is a dup of pr2659.ll.
...
llvm-svn: 62029
2009-01-10 19:06:32 +00:00
Bill Wendling
c56c37f039
Adding unittests for SmallVector. Test by Talin.
...
llvm-svn: 62025
2009-01-10 12:56:31 +00:00
Evan Cheng
5a272e79e5
80 col violation.
...
llvm-svn: 62024
2009-01-10 03:33:22 +00:00
Devang Patel
af7d04207c
Reduce initial small vector sizes.
...
llvm-svn: 62023
2009-01-10 02:42:49 +00:00
Devang Patel
5491f25810
Fix thinko. Create parent scope if parent descriptor is *not* null.
...
llvm-svn: 62022
2009-01-10 02:34:18 +00:00
Evan Cheng
ed74d8ac2a
Duplicated node may produce a non-physical register def.
...
llvm-svn: 62015
2009-01-09 22:44:02 +00:00
Evan Cheng
c1f5a659de
Add test case from PR2659.
...
llvm-svn: 62006
2009-01-09 21:01:31 +00:00
Evan Cheng
0c4fe2600a
Minor debug output tweak.
...
llvm-svn: 62005
2009-01-09 20:42:34 +00:00
Misha Brukman
b302377dc3
This has been replaced by llvm/utils/lint/cpp_lint.py, which is more
...
comprehensive and can support more complex style analysis.
llvm-svn: 62002
2009-01-09 19:46:41 +00:00
Misha Brukman
06b9ee567b
Removed trailing whitespace.
...
llvm-svn: 62000
2009-01-09 19:25:42 +00:00
Devang Patel
235acaa131
Request DwarfWriter. This will be used to handle dbg_* intrinsics.
...
llvm-svn: 61999
2009-01-09 19:11:50 +00:00
Chris Lattner
5f54d50917
fix typo Duncan noticed.
...
llvm-svn: 61997
2009-01-09 18:31:39 +00:00
Chris Lattner
ae0e857b98
Fix PR3304
...
llvm-svn: 61995
2009-01-09 18:18:43 +00:00
Misha Brukman
5cbf223916
Removed trailing whitespace from Makefiles.
...
llvm-svn: 61991
2009-01-09 16:44:42 +00:00
Mikhail Glushenkov
726440dbc9
Support llvmc plugins in out-of-tree projects.
...
llvm-svn: 61990
2009-01-09 16:31:01 +00:00
Mikhail Glushenkov
0f88cfa2ac
Add a --check-graph option to llvmc.
...
llvm-svn: 61989
2009-01-09 16:16:27 +00:00
Dan Gohman
ea1086b7f2
PR2659 was fixed by r61847. Add the testcase as a regression test.
...
llvm-svn: 61986
2009-01-09 08:16:12 +00:00
Chris Lattner
f50aa6ae5c
Implement rdar://6480391, extending of equality icmp's to avoid a truncation.
...
I noticed this in the code compiled for a routine using std::map, which produced
this code:
%25 = tail call i32 @memcmp(i8* %24, i8* %23, i32 6) nounwind readonly
%.lobit.i = lshr i32 %25, 31 ; <i32> [#uses=1]
%tmp.i = trunc i32 %.lobit.i to i8 ; <i8> [#uses=1]
%toBool = icmp eq i8 %tmp.i, 0 ; <i1> [#uses=1]
br i1 %toBool, label %bb3, label %bb4
which compiled to:
call L_memcmp$stub
shrl $31, %eax
testb %al, %al
jne LBB1_11 ##
with this change, we compile it to:
call L_memcmp$stub
testl %eax, %eax
js LBB1_11
This triggers all the time in common code, with patters like this:
%169 = and i32 %ply, 1 ; <i32> [#uses=1]
%170 = trunc i32 %169 to i8 ; <i8> [#uses=1]
%toBool = icmp ne i8 %170, 0 ; <i1> [#uses=1]
%7 = lshr i32 %6, 24 ; <i32> [#uses=1]
%9 = trunc i32 %7 to i8 ; <i8> [#uses=1]
%10 = icmp ne i8 %9, 0 ; <i1> [#uses=1]
etc
llvm-svn: 61985
2009-01-09 07:47:06 +00:00
Chris Lattner
0f7cf1d7e1
Remove some old code that looks like a remanant from signed-types days.
...
llvm-svn: 61984
2009-01-09 07:10:58 +00:00
Chris Lattner
482eb70a10
Fix PR3298, a crash in Jump Threading. Apparently even
...
jump threading can have bugs, who knew? ;-)
llvm-svn: 61983
2009-01-09 06:08:12 +00:00
Chris Lattner
d48d1ec320
this doesn't depend on the gcc early inliner anymore.
...
llvm-svn: 61982
2009-01-09 05:49:27 +00:00
Chris Lattner
7f88a1b512
PR3290 is now fixed.
...
llvm-svn: 61981
2009-01-09 05:46:19 +00:00
Chris Lattner
fef138b140
Fix part 3/2 of PR3290, making instcombine zap (gep(bitcast)) when possible.
...
llvm-svn: 61980
2009-01-09 05:44:56 +00:00