Bill Wendling
621699de22
Remove some unused, old-EH methods.
...
llvm-svn: 149316
2012-01-31 01:14:49 +00:00
Eli Friedman
18a4c31525
Use the correct ShiftAmtTy for creating shifts after legalization. PR11881. Not committing a testcase because I think it will be too fragile.
...
llvm-svn: 149315
2012-01-31 01:08:03 +00:00
Bill Wendling
518a205d0a
Get rid of references to dead intrinsics.
...
The eh.selector and eh.resume intrinsics aren't used anymore. Get rid of some
calls to them.
llvm-svn: 149314
2012-01-31 01:05:20 +00:00
Bill Wendling
ce0c229234
Formatting cleanups. No functionality change.
...
llvm-svn: 149312
2012-01-31 01:01:16 +00:00
Bill Wendling
f3cae51490
Remove no-longer-useful dyn_casts and pals.
...
llvm-svn: 149307
2012-01-31 00:56:53 +00:00
Bill Wendling
bd7ed6fe7c
Add a constified getLandingPad() method.
...
llvm-svn: 149303
2012-01-31 00:26:24 +00:00
Kostya Serebryany
22ddcfd2df
[asan] fix the ObjC support (asan Issue #33 )
...
llvm-svn: 149300
2012-01-30 23:50:10 +00:00
Chandler Carruth
2c469ff14a
Chris's constant data sequence refactoring actually enabled printing
...
vectors of all one bits to be printed more cleverly in the AsmPrinter.
Unfortunately, the byte value for all one bits is the same with
-fsigned-char as the error return of '-1'. Force this to be the unsigned
byte value when returning it to avoid this problem, and update the test
case for the shiny new behavior.
Yay for building LLVM and Clang with -funsigned-char.
Chris, please review, and let me know if there is any reason to not
desire this change. It seems good on the surface, and certainly intended
based on the code written.
llvm-svn: 149299
2012-01-30 23:47:44 +00:00
Evan Cheng
4e7992eeba
PR11834: Use macros which are defined on Windows. Patch by Marina Yatsina.
...
llvm-svn: 149294
2012-01-30 23:10:32 +00:00
Devang Patel
7cdb2ff6b5
Intel syntax. Adjust special code, used to recognize cmp<comparison code>{ss,sd,ps,pd}, for intel syntax.
...
llvm-svn: 149291
2012-01-30 22:47:12 +00:00
Chad Rosier
6a0baa8f09
Typo.
...
llvm-svn: 149289
2012-01-30 22:44:13 +00:00
Chad Rosier
41003f819c
Typo.
...
llvm-svn: 149275
2012-01-30 21:13:22 +00:00
David Greene
6291f3a43c
Implement String Cast from Integer
...
Allow casts from integer to string.
llvm-svn: 149273
2012-01-30 20:47:04 +00:00
Devang Patel
9a9bb5c5db
Intel syntax. Support .intel_syntax directive.
...
llvm-svn: 149270
2012-01-30 20:02:42 +00:00
Benjamin Kramer
396c590818
Fix refacto.
...
llvm-svn: 149269
2012-01-30 20:01:35 +00:00
Matt Beaumont-Gay
9cc6d524ea
Here's a new one: GCC was complaining about an only-used-in-asserts
...
*function*. Wrap the function in #ifndef NDEBUG.
llvm-svn: 149259
2012-01-30 19:26:20 +00:00
Chris Lattner
f06039b39d
Various improvements suggested by Duncan
...
llvm-svn: 149255
2012-01-30 18:19:30 +00:00
Douglas Gregor
e577cfe172
Eliminate narrowing conversion in initializer list, to make C++11 happy
...
llvm-svn: 149254
2012-01-30 16:57:18 +00:00
Benjamin Kramer
20af25f47b
X86: Simplify shuffle mask generation code.
...
llvm-svn: 149248
2012-01-30 15:16:21 +00:00
Alexander Potapenko
7a36f9d399
Fix compilation of ASan tests on OS X Lion (see http://code.google.com/p/address-sanitizer/issues/detail?id=32 )
...
The redzones emitted by AddressSanitizer for CFString instances confuse the linker and are of little use, so we shouldn't add them.
llvm-svn: 149243
2012-01-30 10:40:22 +00:00
Craig Topper
516cba3380
Fix pattern for memory form of PSHUFD for use with FP vectors to remove bitcast to an integer vector that normal code wouldn't have. Also remove bitcasts from code that turns splat vector loads into a shuffle as it was making the broken pattern necessary.
...
llvm-svn: 149232
2012-01-30 07:50:31 +00:00
Chris Lattner
5d917075fd
fix a major oversight that is breaking some llvm-test tests.
...
llvm-svn: 149230
2012-01-30 07:36:01 +00:00
Chris Lattner
978fe0c75a
First step of flipping on ConstantDataSequential: enable ConstantDataVector
...
to be formed whenever ConstantVector::get is used.
llvm-svn: 149226
2012-01-30 06:21:21 +00:00
Chris Lattner
829400bb22
when verbose asm is on, print integers in ConstantDataSequentials just
...
like normal integers.
llvm-svn: 149223
2012-01-30 05:55:11 +00:00
Chris Lattner
51ebe14a36
don't lose tail padding on ConstantDataAggregate vec3's.
...
llvm-svn: 149222
2012-01-30 05:49:43 +00:00
Chris Lattner
c2783009b3
Fix ConstantFoldShuffleVectorInstruction to properly handle the case
...
when the result type has a different # elements than the input vectors.
llvm-svn: 149221
2012-01-30 05:34:13 +00:00
Craig Topper
ca29bcfc10
Move some XOP patterns into instruction definition. Replae VPCMOV intrinsic patterns with custom lowering to a target specific nodes.
...
llvm-svn: 149216
2012-01-30 01:10:15 +00:00
Chris Lattner
372dd1ea18
Add bitcode reader and writer support for ConstantDataAggregate, which
...
should be feature complete now. Lets see if it works.
llvm-svn: 149215
2012-01-30 00:51:16 +00:00
Douglas Gregor
7039e358fc
Move Clang's file-level locking facility over to LLVM's support
...
library, since it doesn't really have anything to do with Clang.
llvm-svn: 149203
2012-01-29 20:15:10 +00:00
Anton Korobeynikov
d0c46550fe
Cleanups for EABI standard functions
...
llvm-svn: 149195
2012-01-29 09:11:50 +00:00
Anton Korobeynikov
1b42e64280
Use base AAPCS for varargs functions even for AAPCS-VFP CC
...
llvm-svn: 149194
2012-01-29 09:06:09 +00:00
Jakob Stoklund Olesen
198236edae
Fix some scavenger performance issues.
...
- Don't call malloc+free in the very hot forward().
- Don't call isTiedToDefOperand().
- Don't create BitVector temporaries.
- Merge DeadRegs into KillRegs.
- Eliminate the early clobber checks, they were irrelevant to scavenging.
- Remove unnecessary code from -Asserts builds.
This speeds up ARM PEI by 3.4x and overall llc -O0 codegen time by 11%.
llvm-svn: 149189
2012-01-29 01:29:28 +00:00
Jakob Stoklund Olesen
8b1853ddef
Avoid creating BitVector temporaries.
...
llvm-svn: 149188
2012-01-29 01:29:25 +00:00
Nick Lewycky
1b3167edec
Fix typo.
...
llvm-svn: 149185
2012-01-28 23:33:44 +00:00
Bob Wilson
de0c335560
Add a note about a potential optimization for clz/ctz patterns for ARM
...
(and other targets).
llvm-svn: 149182
2012-01-28 18:30:07 +00:00
James Molloy
b47489d4ef
Ensure .AliasedSymbol() is called on all uses of getSymbol(). Affects ARM and MIPS ELF backends.
...
Fixes PR11877
llvm-svn: 149180
2012-01-28 15:58:32 +00:00
Benjamin Kramer
4efe5064c3
Silence GCC's -Wreturn-type warning.
...
llvm-svn: 149179
2012-01-28 15:28:41 +00:00
Rafael Espindola
004725876e
Small improvement to the recursion detection logic from the previous commit.
...
llvm-svn: 149175
2012-01-28 06:22:14 +00:00
Rafael Espindola
72f5f170c6
Handle recursive variable definitions directly. This gives us better error
...
messages and allows us to fix PR11865.
llvm-svn: 149174
2012-01-28 05:57:00 +00:00
Kostya Serebryany
7471d1303d
[asan] correctly use ConstantExpr::getGetElementPtr. Catch by NAKAMURA Takumi
...
llvm-svn: 149172
2012-01-28 04:27:16 +00:00
Bill Wendling
8c09040854
Reapply r149159 with a fix to add to a PHI node with a non-null parent.
...
llvm-svn: 149164
2012-01-28 01:17:56 +00:00
Lang Hames
d78ec25e65
Remove code that adds live ranges for dead defs. It seems to be breaking things.
...
llvm-svn: 149163
2012-01-28 01:17:01 +00:00
Bill Wendling
fa5ad212f8
Revert r149159 until I can fix tests.
...
llvm-svn: 149162
2012-01-28 01:10:01 +00:00
Bill Wendling
b4544544a6
Don't always create a separate block for the call to _Unwind_Resume.
...
Sometimes there is only one 'resume' instruction per function. In those
situations, we don't need a separate block for the call to _Unwind_Resume. In
fact, it adds a lot of overhead to code-gen if we do that -- especially at -O0.
If we have a single 'resume' instruction, just generate the call within that
block.
<rdar://problem/10694814>
llvm-svn: 149159
2012-01-28 00:47:18 +00:00
David Greene
ebb006fc3d
Fix Record Name Reference
...
Get the record name though the init to avoid an assert.
llvm-svn: 149153
2012-01-28 00:03:24 +00:00
Lang Hames
a6958c6c4e
Silence warning about parens for && within ||
...
llvm-svn: 149152
2012-01-27 23:52:25 +00:00
Rafael Espindola
bb893fea6b
Add r149110 back with a fix for when the vector and the int have the same
...
width.
llvm-svn: 149151
2012-01-27 23:33:07 +00:00
Rafael Espindola
a4062624d1
Revert r149110 and add a testcase that was crashing since that revision.
...
Unfortunately I also had to disable constant-pool-sharing.ll the code it tests has been
updated to use the IL logic.
llvm-svn: 149148
2012-01-27 22:42:48 +00:00
Lang Hames
ad33d5ace7
Add a "moveInstr" method to LiveIntervals. This can be used to move instructions
...
around within a basic block while maintaining live-intervals.
Updated ScheduleTopDownLive in MachineScheduler.cpp to use the moveInstr API
when reordering MIs.
llvm-svn: 149147
2012-01-27 22:36:19 +00:00
Lang Hames
6f108d9229
Backing out ill-considered 'refactor'.
...
llvm-svn: 149146
2012-01-27 21:43:32 +00:00