Commit Graph

31862 Commits

Author SHA1 Message Date
Chris Lattner 2a4054bddb new testcase
llvm-svn: 36211
2007-04-17 19:03:02 +00:00
Chris Lattner 51109b7830 Commit an patch from Gabor Greif in Mar 2005. This eliminates the tail
pointer from ilist, storing it in the prev pointer of the first node in the
list instead.

This shrinks ilist from 8 to 4 bytes, BasicBlock from 40->36 bytes, Function
from 76->68 bytes, Module from 52->44 bytes.

llvm-svn: 36210
2007-04-17 18:41:42 +00:00
Chris Lattner ceb4b20807 make getnext/getprev accessors private.
llvm-svn: 36209
2007-04-17 18:30:41 +00:00
Dan Gohman 2ce1116b33 Spell doFinalization right, so that it is a proper virtual override and
gets called.

llvm-svn: 36208
2007-04-17 18:21:36 +00:00
Chris Lattner 4a1e0b8c3e make next/prev accessors private
llvm-svn: 36207
2007-04-17 18:16:39 +00:00
Chris Lattner d1721d2e50 bool on darwin/ppc is 4 bytes.
llvm-svn: 36206
2007-04-17 18:15:04 +00:00
Chris Lattner 233f97ac6a remove use of BasicBlock::getNext
llvm-svn: 36205
2007-04-17 18:09:47 +00:00
Chris Lattner b0aebc208c Instruction:: Next/Prev accessors are now private
llvm-svn: 36204
2007-04-17 18:03:55 +00:00
Chris Lattner 2509d7547d add a note
llvm-svn: 36203
2007-04-17 18:03:00 +00:00
Chris Lattner 24e2d9ca03 remove use of BasicBlock::getNext
llvm-svn: 36202
2007-04-17 17:54:12 +00:00
Chris Lattner 672db8eab5 Remove use of Instruction::getNext
llvm-svn: 36201
2007-04-17 17:52:45 +00:00
Chris Lattner cd9bda71a0 eliminate use of Instruction::getNext()
llvm-svn: 36200
2007-04-17 17:51:03 +00:00
Chris Lattner 77a3edcb92 remove use of Instruction::getNext
llvm-svn: 36199
2007-04-17 17:47:54 +00:00
Chris Lattner d9b7511928 eliminate use of Instruction::getPrev(). Patch by Gabor Greif in 2005.
llvm-svn: 36198
2007-04-17 17:38:28 +00:00
Chris Lattner da1ed8de79 eliminate a use of Instruction::getPrev(), patch by Gabor Greif in 2005.
llvm-svn: 36197
2007-04-17 17:36:12 +00:00
Chris Lattner ff0598de75 rename X86FunctionInfo to X86MachineFunctionInfo to match the header file
it is defined in.

llvm-svn: 36196
2007-04-17 17:21:52 +00:00
Anton Korobeynikov 8b7aab009e Implemented correct stack probing on mingw/cygwin for dynamic alloca's.
Also, fixed static case in presence of eax livin. This fixes PR331

PS: Why don't we still have push/pop instructions? :)
llvm-svn: 36195
2007-04-17 09:20:00 +00:00
Jeff Cohen 8e84687350 Make it work on 64-bit systems.
llvm-svn: 36194
2007-04-17 05:48:35 +00:00
Jeff Cohen 38be56ddf5 Fix build breakage on 64-bit systems.
llvm-svn: 36193
2007-04-17 05:33:04 +00:00
Chris Lattner 3c2ff10b93 merge several fields in GlobalValue to use the same word, move CallingConv
field into SubclassData in Value.  This shrinks GlobalVAlue from 48->40
bytes, Function from 88->76, and GlobalVariable from 76->68.  This trims
4640 bytes off my testcase, reading a bc file without materializing any
functions.

llvm-svn: 36192
2007-04-17 04:31:29 +00:00
Andrew Lenharth 2077814c91 Use this nifty Constraints thing and fix the inverted conditional moves
llvm-svn: 36191
2007-04-17 04:07:59 +00:00
Andrew Lenharth fb40bd5654 this is fixed
llvm-svn: 36190
2007-04-17 04:07:27 +00:00
Chris Lattner 422cfcdcb3 The (negative) offset from a SymbolTableListTraits-using ilist to its container
object is always constant.  As such, evaluate it at compile time instead of storing
it as an ivar in SymbolTableListTraits.  This shrinks every SymbolTableListTraits
ilist by a word, shrinking BasicBlock from 44->40 bytes, Function from 96->88 bytes,
and Module from 60->52 bytes.

llvm-svn: 36189
2007-04-17 04:04:14 +00:00
Chris Lattner b47aa543bb Refactor SymbolTableListTraits to only have a single pointer in it, instead
of two.  This shrinkifies Function by 8 bytes (104->96) and Module by 8
bytes (68->60).  On a testcase of mine, this reduces the memory used to
read a module header from 565680b to 561024, a little over 4K.

llvm-svn: 36188
2007-04-17 03:26:42 +00:00
Chris Lattner 0ed36f4078 urr, yeah.
llvm-svn: 36187
2007-04-17 02:04:39 +00:00
Devang Patel f96c3625c2 Remove "ModulePasses requiring FunctionPasses" from the list of future
extensions.

llvm-svn: 36186
2007-04-17 00:17:11 +00:00
Chris Lattner 62a8cbe594 SSE4 is apparently public now.
llvm-svn: 36185
2007-04-17 00:02:37 +00:00
Devang Patel 74ede29a27 Add PR number for reference.
llvm-svn: 36184
2007-04-16 23:52:37 +00:00
Reid Spencer d484ca6428 Make long line fit in 80 cols.
llvm-svn: 36183
2007-04-16 23:32:28 +00:00
Devang Patel abdff3fecd Fix
http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20070416/047888.html

llvm-svn: 36182
2007-04-16 23:03:45 +00:00
Devang Patel 369bec184b New test case.
llvm-svn: 36181
2007-04-16 23:02:22 +00:00
Reid Spencer 58ec791b4c Fix problems in the PartSet lowering having to do with incorrect bit width.
llvm-svn: 36180
2007-04-16 22:21:14 +00:00
Reid Spencer 0ff60618d5 Regenerate
llvm-svn: 36179
2007-04-16 22:02:23 +00:00
Reid Spencer 9c9741e864 Okay, yes there *is* a getKeyLength method on ValueName. And, it should be
used because we *do* want to allow nulls in names.

llvm-svn: 36178
2007-04-16 22:01:57 +00:00
Jeff Cohen 6f3a548ff4 In the event that some really old non-Intel or -AMD CPU is encountered...
llvm-svn: 36177
2007-04-16 21:59:44 +00:00
Reid Spencer 8c756a9ded Fix this test from Duncan's experiment.
llvm-svn: 36176
2007-04-16 21:57:14 +00:00
Reid Spencer 658894a8eb Also validate that the code generation of IntrinsicLowering for LLI works.
llvm-svn: 36175
2007-04-16 21:52:56 +00:00
Reid Spencer c57be6cb4e Implement @sext and @zext parameter attribute handling properly instead of
forcing every small argument of every function regardless of attributes or
calling convention to be expanded.

llvm-svn: 36174
2007-04-16 21:50:40 +00:00
Jeff Cohen da17029218 Before assuming that the original code didn't work for Athlon64, the person who
replaced it with a FIXME should have determined what did work.  Then he would have
realized that the code was in fact correct, and would have avoided breaking it.

llvm-svn: 36173
2007-04-16 21:48:58 +00:00
Chris Lattner f69ab9475c refix this
llvm-svn: 36172
2007-04-16 21:30:21 +00:00
Devang Patel 9b5e8e5c32 Document how, module pass can require function pass.
llvm-svn: 36171
2007-04-16 21:28:14 +00:00
Chris Lattner e0a060043b use an x86 t-t for an x86 test. Thanks to Dan for noticing this!
llvm-svn: 36170
2007-04-16 21:26:37 +00:00
Chris Lattner 6d9b520091 fix incorrectly upgraded test
llvm-svn: 36169
2007-04-16 21:24:14 +00:00
Reid Spencer 654b96df8b Fix 80 col violations.
llvm-svn: 36168
2007-04-16 21:24:12 +00:00
Chris Lattner 5e39c97ba0 We shouldn't have tests for features we don't have yet.
llvm-svn: 36167
2007-04-16 21:22:58 +00:00
Chris Lattner e54ef7a8fb remove bogus test
llvm-svn: 36166
2007-04-16 21:20:27 +00:00
Duncan Sands 2e1ec4dee3 Spelling fix.
llvm-svn: 36165
2007-04-16 21:19:45 +00:00
Chris Lattner 18d4802798 MAke this test portable.
llvm-svn: 36164
2007-04-16 21:18:56 +00:00
Duncan Sands 330d495889 Test code quality for variable length array references.
llvm-svn: 36163
2007-04-16 21:13:57 +00:00
Duncan Sands 219044fcbc Check handling of arrays of variable sized components.
llvm-svn: 36162
2007-04-16 21:12:03 +00:00