Victor Hernandez
065bc44d01
Update malloc call creation code (AllocType is now the element type of the malloc, not the resulting type).
...
In getMallocArraySize(), fix bug in the case that array size is the product of 2 constants.
Extend isArrayMalloc() and getMallocArraySize() to handle case where malloc is used as char array.
Ensure that ArraySize in LowerAllocations::runOnBasicBlock() is correct type.
Extend Instruction::isSafeToSpeculativelyExecute() to handle malloc calls.
Add verification for malloc calls.
Reviewed by Dan Gohman.
llvm-svn: 82257
2009-09-18 19:20:02 +00:00
Chris Lattner
288097205f
duncan points out the EH selector values are signed.
...
llvm-svn: 82245
2009-09-18 18:34:29 +00:00
Chris Lattner
194391ddb7
convert some stuff to StringRef to avoid temporary std::strings.
...
llvm-svn: 82244
2009-09-18 18:31:37 +00:00
Chris Lattner
d600c9342b
add a comment.
...
llvm-svn: 82236
2009-09-18 18:10:19 +00:00
Chris Lattner
b2ccd100fc
This file can need access to the X86 instruction enums when the table exceeds 32-bits.
...
llvm-svn: 82235
2009-09-18 18:08:55 +00:00
Daniel Dunbar
d4df08bb72
Fix a few more conversion warnings on 4.0
...
llvm-svn: 82232
2009-09-18 17:48:05 +00:00
Mike Stump
17947c8fa5
Update to latest versions of config.guess and config.sub from
...
http://savannah.gnu.org/projects/config
llvm-svn: 82229
2009-09-18 17:10:27 +00:00
Anton Korobeynikov
fb7ac49d96
Allow symbols to start from the digit if target requests it. This allows, e.g. pinning
...
variables to specified absolute address. Make use of this feature for MSP430.
This unbreaks PR4776.
llvm-svn: 82227
2009-09-18 16:57:42 +00:00
Nick Lewycky
6fccd67e2f
Stop using alloca.
...
llvm-svn: 82225
2009-09-18 16:46:16 +00:00
Xerxes Ranby
fecea1fb70
Revert r82214 completely to fix build.
...
llvm-svn: 82218
2009-09-18 09:50:00 +00:00
Evan Cheng
479df579a0
Revert r82214. It broke 403.gcc on x86_64 / Darwin.
...
llvm-svn: 82215
2009-09-18 08:26:06 +00:00
Evan Cheng
d1392886c1
Fix a bug in sdisel switch lowering code. When it updates the phi nodes in switch successor blocks, it can introduce multiple phi operands of the same value from different blocks (and may not be on the predecessor list).
...
This can be seen on CodeGen/Generic/2006-09-06-SwitchLowering.ll. But it's not known to cause any real regression (but I have added an assertion for it now).
llvm-svn: 82214
2009-09-18 08:16:04 +00:00
Nick Lewycky
9143d2c7a2
Add newlines.
...
llvm-svn: 82206
2009-09-18 07:36:47 +00:00
Chris Lattner
64f5ff4836
make this testcase check darwin32 also
...
llvm-svn: 82182
2009-09-17 23:56:41 +00:00
Chris Lattner
5fa26b0479
rename test
...
llvm-svn: 82181
2009-09-17 23:55:12 +00:00
Chris Lattner
7c218a0238
tolerate llvm.eh.selector.i64 on 32-bit systems and llvm.eh.selector.i32 on
...
64-bit systems.
llvm-svn: 82180
2009-09-17 23:54:54 +00:00
Chris Lattner
ef6c779ba2
convert to filecheck
...
llvm-svn: 82179
2009-09-17 23:54:26 +00:00
Chris Lattner
9196dc197b
rename file
...
llvm-svn: 82178
2009-09-17 23:42:06 +00:00
Julien Lerouge
2f6ea4ae21
Use __attribute__((__used__)) if GCC >= 3.1 (seems to be the oldest GCC
...
supporting this attribute).
llvm-svn: 82177
2009-09-17 23:27:10 +00:00
Devang Patel
0076ee9e6e
A testcase!
...
llvm-svn: 82176
2009-09-17 23:05:07 +00:00
Devang Patel
d90471a00d
Fix parsing of optional metadata for 'load', 'store' and 'alloc' instructions.
...
llvm-svn: 82175
2009-09-17 23:04:48 +00:00
John McCall
f2c6ae3996
Fix a few places where PointerIntPair was using PointerLikeTypeTraits<PointerTy>
...
instead of the PtrTraits provided. Allows PointerIntPair to contain a
PointerUnion safely, as long as the bits add up.
llvm-svn: 82163
2009-09-17 20:35:18 +00:00
Chris Lattner
be5afd41e3
pass machinemoduleinfo down into getSymbolForDwarfGlobalReference,
...
currently unused.
llvm-svn: 82157
2009-09-17 18:49:52 +00:00
Dan Gohman
723717853b
Teach ScalarEvolution how to reason about no-wrap flags on loops
...
where the induction variable has a non-unit stride, such as {0,+,2}, and
there are expressions such as {1,+,2} inside the loop formed with
or or add nsw operators.
llvm-svn: 82151
2009-09-17 18:05:20 +00:00
Jim Grosbach
6d6f3ded0b
grammar
...
llvm-svn: 82150
2009-09-17 17:57:26 +00:00
Jim Grosbach
3d859b95f0
grammar
...
llvm-svn: 82149
2009-09-17 17:55:55 +00:00
Daniel Dunbar
b415837d62
Another try at fixing compile warnings on 4.0
...
llvm-svn: 82148
2009-09-17 17:46:53 +00:00
Benjamin Kramer
b1d15dcefe
Initialize HasMetadata to zero.
...
llvm-svn: 82145
2009-09-17 14:51:57 +00:00
Daniel Dunbar
9f59aae438
Remove test cases using -regalloc=simple.
...
llvm-svn: 82130
2009-09-17 06:37:07 +00:00
Evan Cheng
491d179d97
Remove simple regalloc. It has bit rotted.
...
llvm-svn: 82127
2009-09-17 05:48:07 +00:00
Chris Lattner
09084c45af
add a version of the APFloat constructor that initializes to 0.0
...
llvm-svn: 82110
2009-09-17 01:08:43 +00:00
Evan Cheng
218f882aff
Fix PR4910: Broken logic in coalescer means when a physical register liveness is being shortened, the sub-registers were not. The symptom is the register allocator could not find a free register for this particular test.
...
llvm-svn: 82108
2009-09-17 00:57:15 +00:00
Daniel Dunbar
c688e9b700
Some platforms may need malloc.h for alloca.
...
llvm-svn: 82100
2009-09-17 00:14:44 +00:00
Daniel Dunbar
1ce602e5db
Update CMake.
...
llvm-svn: 82097
2009-09-17 00:06:48 +00:00
Sean Callanan
a025a7f352
Added the LODS (load byte into register, usually
...
as part string parsing) instructions to the Intel
instruction tables.
llvm-svn: 82089
2009-09-16 22:59:28 +00:00
Daniel Dunbar
60e1dee7fa
Add StringRef::{rfind, rsplit}
...
llvm-svn: 82087
2009-09-16 22:38:48 +00:00
Sean Callanan
cb5724f556
Added the LAR (load segment access rights)
...
instructions to the Intel instruction tables.
llvm-svn: 82084
2009-09-16 21:55:34 +00:00
Sean Callanan
a0ec1cbaa9
Added the LOOP family of instructions to the Intel
...
instruction tables.
llvm-svn: 82083
2009-09-16 21:50:07 +00:00
Sean Callanan
38313b9f78
Added an alternate form of register-register CMP
...
to the Intel instruction tables.
llvm-svn: 82081
2009-09-16 21:11:23 +00:00
Devang Patel
0b710cf26b
Fix typo.
...
llvm-svn: 82080
2009-09-16 21:09:07 +00:00
Devang Patel
63a798ef1e
At iSel time, update DebugLoc based on debug info attached with an instruction.
...
llvm-svn: 82077
2009-09-16 20:39:11 +00:00
Dan Gohman
752227ef24
Add a new pass for doing late hoisting of floating-point and vector
...
constants out of loops. These aren't covered by the regular LICM
pass, because in LLVM IR constants don't require separate
instructions. They're not always covered by the MachineLICM pass
either, because it doesn't know how to unfold folded constant-pool
loads. This is somewhat experimental at this point, and off by
default.
llvm-svn: 82076
2009-09-16 20:25:11 +00:00
Devang Patel
f15eea3399
Print debug info attached with an instruction.
...
llvm-svn: 82075
2009-09-16 20:21:17 +00:00
Bob Wilson
989568d935
Expand vector floating-point conversions not supported by NEON.
...
llvm-svn: 82074
2009-09-16 20:20:44 +00:00
Dan Gohman
f289d3a1c9
Now that llc can read .ll files directly, teach it to recognize .ll as
...
an extension, so that the default output filename for foo.ll is foo.s,
not foo.ll.s
llvm-svn: 82071
2009-09-16 19:18:41 +00:00
Devang Patel
371df479d4
Provide a way to extract location info from DILocation.
...
llvm-svn: 82064
2009-09-16 18:20:05 +00:00
Devang Patel
b3173a0dfb
Parse debug info attached with an instruction.
...
llvm-svn: 82063
2009-09-16 18:18:06 +00:00
Devang Patel
ae097e977b
Add an interface to attach debugging information with an instruction.
...
llvm-svn: 82062
2009-09-16 18:16:11 +00:00
Devang Patel
253aa4d192
Add llvm::Metadata to manage metadata used in a context.
...
This interface will be used to attach metadata with an instruction.
llvm-svn: 82060
2009-09-16 18:09:00 +00:00
Kevin Enderby
41b1d4288a
Fixed some problems with the logic of parsing line comments by adding
...
isAtStartOfComment and using that instead in two places where a loop
to check if the char was in MAI.getCommentString().
llvm-svn: 82059
2009-09-16 18:08:00 +00:00