Commit Graph

65479 Commits

Author SHA1 Message Date
Sean Callanan
90371ad165 Added a testcase for the ENTER instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115580 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-05 00:21:40 +00:00
Sean Callanan
6aeb2e32b7 Fixed the disassembler to handle two new X86
instruction forms.  Now the ENTER instruction
disassembles correctly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115573 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 22:45:51 +00:00
Evan Cheng
2a135ae530 This DAG combine BRCOND transformation can look pass truncate of the operand:
//   %a = ...                                                                                                                                                                                  
    //   %b = and i32 %a, 2                                                                                                                                                                        
    //   %c = srl i32 %b, 1                                                                                                                                                                        
    //   brcond i32 %c ...                                                                                                                                                                         
    //                                                                                                                                                                                             
    // into                                                                                                                                                                                        
    //                                                                                                                                                                                             
    //   %a = ...                                                                                                                                                                                  
    //   %b = and i32 %a, 2                                                                                                                                                                        
    //   %c = setcc eq %b, 0                                                                                                                                                                       
    //   brcond %c ...

Make sure it restores local variable N1, which corresponds to the condition operand if it fails to match.

This apparently breaks TCE but since that backend isn't in the tree I don't have a test for it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115571 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 22:41:01 +00:00
Bruno Cardoso Lopes
48f9543404 AVX intrinsics and builtins were also added to clang
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115566 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 22:07:22 +00:00
Douglas Gregor
3311cf83d4 Spell AltiVec correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115560 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 21:12:06 +00:00
Bill Wendling
6cf6c79e82 The pshufw instruction came about in MMX2 when SSE was introduced. Don't place
it in with the SSSE3 instructions.

Steward! Could you place this chair by the aft sun deck? I'm trying to get away
from the Astors. They are such boors!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115552 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 20:24:01 +00:00
Kevin Enderby
3f55c24df9 Incorporate suggestions by Daniel Dunbar after his review. Thanks Daniel!
1) Changed ValidateDwarfFileNumber() to isValidDwarfFileNumber() to be better
   named.  Since it is just a predicate and isn't actually changing any state.

2) Added a missing return in the comments for setCurrentDwarfLoc() in 
   include/llvm/MC/MCContext.h for fix formatting.

3) Changed clearDwarfLocSeen() to ClearDwarfLocSeen() since it does change
   state.

4) Simplified the last test in isValidDwarfFileNumber() to just a one line
   boolean test of MCDwarfFiles[FileNumber] != 0 for the final return statement.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115551 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 20:17:24 +00:00
Daniel Dunbar
f0233c6cd9 ReleaseNotes: Note some changes to LLVM development infrastructure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115550 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 20:11:41 +00:00
Daniel Dunbar
f2c13efa65 ReleaseNotes: Note a header rename.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115549 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 20:11:39 +00:00
Rafael Espindola
607d1f6d32 Implement ELF::R_X86_64_GOTPCREL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115547 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 19:51:39 +00:00
Rafael Espindola
cebdc01d66 Move isFixupKindX86PCRel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115545 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 19:46:28 +00:00
Rafael Espindola
92bf6684f6 Produce a R_X86_64_PLT32 when needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115541 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 19:04:13 +00:00
Rafael Espindola
28f9ac8101 Produce a R_X86_64_GOT32 when needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115537 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 18:44:25 +00:00
Gabor Greif
265bc8932a validator fixes; others remain, somebody who knows some html, please have a look
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115526 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:54:30 +00:00
Jim Grosbach
c5ccf73dee Remove unneeded header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115525 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:53:40 +00:00
Daniel Dunbar
97b01a82c0 Add KLEE 2.8 release notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115524 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:39:47 +00:00
Jan Wen Voung
083cf1574f Add hook in MCSection to decide when to use "optimized nops", for each
section kind. Previously, optimized nops were only used for MachO.
Also added tests for ELF and COFF.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115523 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:32:41 +00:00
Dan Gohman
7a391832f4 Don't add the operand count to SCEV uniquing data; FoldingSetNodeID
already knows its own length, so this is redundant.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115521 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:24:08 +00:00
Daniel Dunbar
4a517fc87c A few more random Clang release notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115520 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:06:49 +00:00
Gabor Greif
9f45913a4a minor tweaks and typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115518 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 17:03:49 +00:00
Devang Patel
c79dda2fd2 Fix lexical block's tag number.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115516 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 16:51:59 +00:00
Chris Lattner
b822f659fc scheduler update
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115515 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 16:46:07 +00:00
Chris Lattner
c5fd15628f another tweak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115510 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 16:06:37 +00:00
Rafael Espindola
55fb102130 Include the section address in the computation of the relocation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115509 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 15:59:01 +00:00
Rafael Espindola
01263d35d4 Correctly compute the relocation when it is not in the first fragment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115506 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 15:28:43 +00:00
Francois Pichet
2e0affb428 static_cast to long, otherwise MSVC 2008 won't compile.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115503 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 12:31:20 +00:00
Lang Hames
ab62b7e861 Removed the older style (in-allocator) problem construction system from the PBQP allocator. Problem construction is now done exclusively with the new builders.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115502 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 12:13:07 +00:00
Duncan Sands
3af96330a5 Ada support has moved to dragonegg - I am no longer working on
Ada in llvm-gcc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115501 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 10:06:56 +00:00
Duncan Sands
30be9e4f79 Fix a bunch of typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115500 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 10:04:14 +00:00
Duncan Sands
051f2ee5c7 Altvec -> Altivec.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115499 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 09:11:50 +00:00
Douglas Gregor
f2409d540a Update LLVM 2.8 release notes for Clang
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115498 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 07:02:35 +00:00
Chris Lattner
7714c91533 checkpoint, the release notes are now feature complete.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115495 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 04:39:25 +00:00
Chris Lattner
3bdcda1a8b checkpoint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115494 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 03:58:12 +00:00
Chris Lattner
11b66112e0 checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115489 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 02:42:39 +00:00
NAKAMURA Takumi
71cacdaa15 Makefile.rules: Fix breakage on cygming --enable-shared.
This has been applied already in r115093 on release_28.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115487 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 02:32:21 +00:00
Chris Lattner
bb11771eb6 write Major Changes and Removed Features.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115486 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-04 01:29:06 +00:00
Chris Lattner
7554771d50 move dragonegg up in the list, write blurbs for lldb and libc++
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115484 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 23:49:06 +00:00
Chris Lattner
2fb6e5c16c add a bunch of stuff that works with 2.8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115483 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 23:09:03 +00:00
Anton Korobeynikov
e7beda183d va_args support for Win64.
Patch by Cameron!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115480 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 22:52:07 +00:00
Anton Korobeynikov
6af61ca789 Properly emit stack probe on win64 (for non-mingw targets).
Based on the patch by Cameron Esfahani!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115479 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 22:02:38 +00:00
Eli Friedman
d32d85e5ba Add 3DNowA instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115477 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 20:23:13 +00:00
Chris Lattner
ece290226a unbreak buildbot
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115476 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 20:02:48 +00:00
Chris Lattner
591d76ea5a the immediate field of pshufw is actually an 8-bit field, not a 8-bit field that is sign extended. This fixes PR8288
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115473 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 19:09:13 +00:00
Rafael Espindola
0febc4657b Jim Asked us to move DataLayout on ARM back to the most specialized classes. Do
so and also change X86 for consistency.

Investigating if this can be improved a bit.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115469 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 18:59:45 +00:00
Chris Lattner
cc07d7116a add support for the prefetch/prefetchw instructions, move femms into
the right file.  The assembler supports all the 3dnow instructions now,
but not the "3dnowa" ones.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115468 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 18:42:30 +00:00
Chris Lattner
f132fa0e74 what the heck, add support for the rest of the 3dNow! binary operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115467 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 18:24:18 +00:00
Chris Lattner
548abfcbd6 Implement support for the bizarre 3DNow! encoding (which is unlike anything
else in X86), and add support for pavgusb.  This is apparently the
only instruction (other than movsx) that is preventing ffmpeg from building
with clang.

If someone else is interested in banging out the rest of the 3DNow! 
instructions, it should be quite easy now.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115466 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 18:08:05 +00:00
Duncan Sands
5dd76fa50a GCC extensions are no longer used here - update the comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115463 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 15:31:50 +00:00
Duncan Sands
75e2016f02 Remove two uses of the gcc specific 'aligned' attribute. This
is partly because this attribute caused trouble in the past (the
SmallVector one had to be changed from aligned to aligned(8) due
to causing crashes on i386 for example; in theory the same might
be needed in the Allocator case...).  But it's mostly because
there seems to be no point in special casing gcc here.  Using the
same implementation for all compilers results in better testing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115462 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 15:15:19 +00:00
Bill Wendling
8e956f7e3e Add test to make sure that the MMX intrinsic calls make it out the other end in
tact.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115458 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-03 03:30:30 +00:00