OSDN Git Service
Rafael Espindola [Tue, 5 Oct 2010 15:11:03 +0000 (15:11 +0000)]
On ELF we need to know which symbols are used in relocations to decide if
they should be in the symbol table or not. Instead of "guessing", just compute
the symbol table after the relocations are known.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115619
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Tue, 5 Oct 2010 14:51:48 +0000 (14:51 +0000)]
Properly deserialize Clang types that are used as attribute arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115616
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Tue, 5 Oct 2010 11:16:24 +0000 (11:16 +0000)]
test/CodeGen/X86/atomic_op.ll: Rename @main to @func. Extra sequences will be inserted to @main as prologue on cygming, to fail.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115611
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 07:13:35 +0000 (07:13 +0000)]
integrate the 64-bit shifts into X86InstrShiftRotate.td. Enough for tonight.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115608
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 07:00:12 +0000 (07:00 +0000)]
move 32-bit shift and rotates out to their own file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115607
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:52:35 +0000 (06:52 +0000)]
add new file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115606
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:52:26 +0000 (06:52 +0000)]
move sign and zero extensions out to their own file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115605
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:47:35 +0000 (06:47 +0000)]
move some instructions from Instr64Bit -> InstrInfo.
bswap32 doesn't read eflags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115604
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:41:40 +0000 (06:41 +0000)]
move CMOV_FR32 and friends to InstrCompiler, since they are
pseudo instructions.
Move POPCNT to InstrSSE since they are SSE4 instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115603
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:37:31 +0000 (06:37 +0000)]
move various pattern matching support goop out of X86Instr64Bit, to live
with the 32-bit stuff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115602
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:33:16 +0000 (06:33 +0000)]
split conditional moves and setcc's out to their own file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115601
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:27:48 +0000 (06:27 +0000)]
move string pseudo instructions to InstrCompiler consolidate 64-bit and 32-bit together.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115600
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:22:35 +0000 (06:22 +0000)]
move the atomic pseudo instructions out to X86InstrCompiler.td
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115599
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:10:16 +0000 (06:10 +0000)]
move more pseudo instructions out to X86InstrCompiler.td
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115598
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:06:53 +0000 (06:06 +0000)]
move VMX instructions out to their own file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115597
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 06:04:14 +0000 (06:04 +0000)]
continue moving stuff out to X86InstrSystem.td. Move
control flow stuff out to X86InstrControl.td. Move
some compiler pseudo instructions and Pat<> patterns
out to X86InstrCompiler.td
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115596
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Tue, 5 Oct 2010 06:00:52 +0000 (06:00 +0000)]
Support: Add __forceinline to Compiler.h on MSVC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115595
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Tue, 5 Oct 2010 06:00:43 +0000 (06:00 +0000)]
fix MSVC 2010 build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115594
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael J. Spencer [Tue, 5 Oct 2010 06:00:33 +0000 (06:00 +0000)]
Cleanup Whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115593
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 5 Oct 2010 05:32:15 +0000 (05:32 +0000)]
refactor .td files a bit, moving system instructions out to X86InstrSystem.td
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115591
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Tue, 5 Oct 2010 01:00:42 +0000 (01:00 +0000)]
s/The ARM has/The ARM backend has/
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115584
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Tue, 5 Oct 2010 00:35:16 +0000 (00:35 +0000)]
Update LLVMLibDeps
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115583
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Tue, 5 Oct 2010 00:34:11 +0000 (00:34 +0000)]
Re-apply r115363 and r115366 now that r115525 has removed the un-needed header
that caused the circular dependencies on Linux.
Built OK for me on OSX and Linux (Ubuntu) with configure/make and CMake. Will
keep an eye on the bots....
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115582
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Tue, 5 Oct 2010 00:21:40 +0000 (00:21 +0000)]
Added a testcase for the ENTER instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115580
91177308-0d34-0410-b5e6-
96231b3b80d8
Sean Callanan [Mon, 4 Oct 2010 22:45:51 +0000 (22:45 +0000)]
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
Evan Cheng [Mon, 4 Oct 2010 22:41:01 +0000 (22:41 +0000)]
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
Bruno Cardoso Lopes [Mon, 4 Oct 2010 22:07:22 +0000 (22:07 +0000)]
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
Douglas Gregor [Mon, 4 Oct 2010 21:12:06 +0000 (21:12 +0000)]
Spell AltiVec correctly
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115560
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 4 Oct 2010 20:24:01 +0000 (20:24 +0000)]
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
Kevin Enderby [Mon, 4 Oct 2010 20:17:24 +0000 (20:17 +0000)]
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
Daniel Dunbar [Mon, 4 Oct 2010 20:11:41 +0000 (20:11 +0000)]
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
Daniel Dunbar [Mon, 4 Oct 2010 20:11:39 +0000 (20:11 +0000)]
ReleaseNotes: Note a header rename.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115549
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 4 Oct 2010 19:51:39 +0000 (19:51 +0000)]
Implement ELF::R_X86_64_GOTPCREL.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115547
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 4 Oct 2010 19:46:28 +0000 (19:46 +0000)]
Move isFixupKindX86PCRel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115545
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 4 Oct 2010 19:04:13 +0000 (19:04 +0000)]
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
Rafael Espindola [Mon, 4 Oct 2010 18:44:25 +0000 (18:44 +0000)]
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
Gabor Greif [Mon, 4 Oct 2010 17:54:30 +0000 (17:54 +0000)]
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
Jim Grosbach [Mon, 4 Oct 2010 17:53:40 +0000 (17:53 +0000)]
Remove unneeded header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115525
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Mon, 4 Oct 2010 17:39:47 +0000 (17:39 +0000)]
Add KLEE 2.8 release notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115524
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Wen Voung [Mon, 4 Oct 2010 17:32:41 +0000 (17:32 +0000)]
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
Dan Gohman [Mon, 4 Oct 2010 17:24:08 +0000 (17:24 +0000)]
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
Daniel Dunbar [Mon, 4 Oct 2010 17:06:49 +0000 (17:06 +0000)]
A few more random Clang release notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115520
91177308-0d34-0410-b5e6-
96231b3b80d8
Gabor Greif [Mon, 4 Oct 2010 17:03:49 +0000 (17:03 +0000)]
minor tweaks and typos
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115518
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Mon, 4 Oct 2010 16:51:59 +0000 (16:51 +0000)]
Fix lexical block's tag number.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115516
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 4 Oct 2010 16:46:07 +0000 (16:46 +0000)]
scheduler update
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115515
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 4 Oct 2010 16:06:37 +0000 (16:06 +0000)]
another tweak
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115510
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Mon, 4 Oct 2010 15:59:01 +0000 (15:59 +0000)]
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
Rafael Espindola [Mon, 4 Oct 2010 15:28:43 +0000 (15:28 +0000)]
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
Francois Pichet [Mon, 4 Oct 2010 12:31:20 +0000 (12:31 +0000)]
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
Lang Hames [Mon, 4 Oct 2010 12:13:07 +0000 (12:13 +0000)]
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
Duncan Sands [Mon, 4 Oct 2010 10:06:56 +0000 (10:06 +0000)]
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
Duncan Sands [Mon, 4 Oct 2010 10:04:14 +0000 (10:04 +0000)]
Fix a bunch of typos.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115500
91177308-0d34-0410-b5e6-
96231b3b80d8
Duncan Sands [Mon, 4 Oct 2010 09:11:50 +0000 (09:11 +0000)]
Altvec -> Altivec.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115499
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Gregor [Mon, 4 Oct 2010 07:02:35 +0000 (07:02 +0000)]
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
Chris Lattner [Mon, 4 Oct 2010 04:39:25 +0000 (04:39 +0000)]
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
Chris Lattner [Mon, 4 Oct 2010 03:58:12 +0000 (03:58 +0000)]
checkpoint
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115494
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 4 Oct 2010 02:42:39 +0000 (02:42 +0000)]
checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115489
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Mon, 4 Oct 2010 02:32:21 +0000 (02:32 +0000)]
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
Chris Lattner [Mon, 4 Oct 2010 01:29:06 +0000 (01:29 +0000)]
write Major Changes and Removed Features.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115486
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 3 Oct 2010 23:49:06 +0000 (23:49 +0000)]
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
Chris Lattner [Sun, 3 Oct 2010 23:09:03 +0000 (23:09 +0000)]
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
Anton Korobeynikov [Sun, 3 Oct 2010 22:52:07 +0000 (22:52 +0000)]
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
Anton Korobeynikov [Sun, 3 Oct 2010 22:02:38 +0000 (22:02 +0000)]
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
Eli Friedman [Sun, 3 Oct 2010 20:23:13 +0000 (20:23 +0000)]
Add 3DNowA instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115477
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 3 Oct 2010 20:02:48 +0000 (20:02 +0000)]
unbreak buildbot
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115476
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 3 Oct 2010 19:09:13 +0000 (19:09 +0000)]
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
Rafael Espindola [Sun, 3 Oct 2010 18:59:45 +0000 (18:59 +0000)]
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
Chris Lattner [Sun, 3 Oct 2010 18:42:30 +0000 (18:42 +0000)]
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
Chris Lattner [Sun, 3 Oct 2010 18:24:18 +0000 (18:24 +0000)]
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
Chris Lattner [Sun, 3 Oct 2010 18:08:05 +0000 (18:08 +0000)]
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
Duncan Sands [Sun, 3 Oct 2010 15:31:50 +0000 (15:31 +0000)]
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
Duncan Sands [Sun, 3 Oct 2010 15:15:19 +0000 (15:15 +0000)]
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
Bill Wendling [Sun, 3 Oct 2010 03:30:30 +0000 (03:30 +0000)]
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
Evan Cheng [Sun, 3 Oct 2010 02:03:59 +0000 (02:03 +0000)]
Major changes to Cortex-A9 itinerary.
1. Model dual issues as two FUs.
2. Model the pipelines correctly: two symmetric ALUs, the multiplier is a
dependent pipeline on ALU0.
The changes do not have much impact on codegen right now. But I plan to make
pre-RA scheduler multi-issue aware which should take good advantage of the
changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115457
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sun, 3 Oct 2010 01:12:20 +0000 (01:12 +0000)]
Auto-upgrade tests for the new MMX intrinsic calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115456
91177308-0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Sun, 3 Oct 2010 00:46:57 +0000 (00:46 +0000)]
Implement a very basic PIC case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115454
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Sun, 3 Oct 2010 00:46:06 +0000 (00:46 +0000)]
Cleanup. Get rid of extraneous variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115453
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 23:06:23 +0000 (23:06 +0000)]
stub out a header to put 3dNow! instructions into.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115429
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 22:44:15 +0000 (22:44 +0000)]
random updates
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115427
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 21:59:30 +0000 (21:59 +0000)]
checkpoint, don't expect this to read right yet. :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115426
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 21:32:15 +0000 (21:32 +0000)]
fix a regression introduced in r115243, in which the instruction
backing int_x86_ssse3_pshuf_w got removed. This caused PR8280.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115422
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 19:32:01 +0000 (19:32 +0000)]
add a bunch more notes. I survived.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115418
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 18:53:48 +0000 (18:53 +0000)]
actually, move the elf tests into the existing elf dir.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115416
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 18:52:57 +0000 (18:52 +0000)]
consolidate ELF tests into asmparser tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115415
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 18:52:05 +0000 (18:52 +0000)]
move ARM MC tests up one level.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115414
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 18:49:27 +0000 (18:49 +0000)]
remove reference to dead script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115413
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 2 Oct 2010 18:44:23 +0000 (18:44 +0000)]
nuke an old script
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115412
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Sat, 2 Oct 2010 05:24:46 +0000 (05:24 +0000)]
Stop using LiveRange in MachineVerifier.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115408
91177308-0d34-0410-b5e6-
96231b3b80d8
Francois Pichet [Sat, 2 Oct 2010 03:26:54 +0000 (03:26 +0000)]
Fix MSVC release mode compilation error.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115407
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Sat, 2 Oct 2010 03:04:49 +0000 (03:04 +0000)]
Stop the build if cyclic library dependecies found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115405
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Sat, 2 Oct 2010 03:04:43 +0000 (03:04 +0000)]
Update library dependencies.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115404
91177308-0d34-0410-b5e6-
96231b3b80d8
Oscar Fuentes [Sat, 2 Oct 2010 02:38:42 +0000 (02:38 +0000)]
Handle InstPrinter's on the CMake build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115402
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Sat, 2 Oct 2010 01:49:29 +0000 (01:49 +0000)]
Fix a miscompile in 186.crafty for Thumb2 that was exposed by Evan's
scheduling change in svn 115121. The CriticalAntiDepBreaker had bad
liveness information. It was calculating the KillIndices for one scheduling
region in a basic block, rescheduling that region so the KillIndices were
no longer valid, and then using those wrong KillIndices to make decisions
for the next scheduling region. I've not been able to reduce a small
testcase for this. Radar
8502534.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115400
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 2 Oct 2010 01:16:59 +0000 (01:16 +0000)]
Wind these directories back too. File adds and removes are properly represented
in patches. :-(
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115396
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 2 Oct 2010 01:08:17 +0000 (01:08 +0000)]
Continue reverting r115363.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115395
91177308-0d34-0410-b5e6-
96231b3b80d8
Nick Lewycky [Sat, 2 Oct 2010 01:06:42 +0000 (01:06 +0000)]
Revert patches r115363 r115367 r115391 due to build breakage:
llvm[2]: Updated LibDeps.txt because dependencies changed
llvm[2]: Checking for cyclic dependencies between LLVM libraries.
find-cycles.pl: Circular dependency between *.a files:
find-cycles.pl: libLLVMMSP430AsmPrinter.a libLLVMMSP430CodeGen.a
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115393
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Sat, 2 Oct 2010 00:39:56 +0000 (00:39 +0000)]
Update CMake files for recent AsmPrinter->InstPrinter changes. Can someone who
is more familiar with CMake please review?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115391
91177308-0d34-0410-b5e6-
96231b3b80d8
Eric Christopher [Sat, 2 Oct 2010 00:32:44 +0000 (00:32 +0000)]
Start on lowering global addresses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115390
91177308-0d34-0410-b5e6-
96231b3b80d8
Kevin Enderby [Sat, 2 Oct 2010 00:13:41 +0000 (00:13 +0000)]
This adds a Darwin x86_64 relocation encoding for a subtraction expression
where both symbols are "local", that is non-external symbols, and there is
no "base" for the symbols used in the expression, that is the section has
no non-temporary symbols. This case looks like this:
% cat local_reloc_A-B.s
.long 0
LB: .long 1
.long LA - LB - 4
.long 2
LA: .long 3
which llvm-mc will not encode without this patch, generates a "unsupported
local relocations in difference" error, but the Darwin assembler will
encode with relocation entries like this:
% otool -rv a.out l.out
a.out:
Relocation information (__TEXT,__text) 2 entries
address pcrel length extern type scattered symbolnum/value
00000008 False long False SUB False 1 (__TEXT,__text)
00000008 False long False UNSIGND False 1 (__TEXT,__text)
which is very similar to what is encoded when the symbols don't have the
leading 'L' and they are not temporary symbols. Which llvm-mc and the
Darwin assembler will encoded like this:
Relocation information (__TEXT,__text) 2 entries
address pcrel length extern type scattered symbolnum/value
00000008 False long True SUB False B
00000008 False long True UNSIGND False A
This is the missing relocation encoding needed to allow the Mach-O x86
Dwarf file and line table to be emitted. So this patch also removes the
TODO from the if() statement in MCMachOStreamer::Finish() that didn't
call MCDwarfFileTable::Emit() for 64-bit targets.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115389
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Fri, 1 Oct 2010 23:52:27 +0000 (23:52 +0000)]
Drop the use of LiveInterval::iterator and the LiveRange class in
RemoveCopyByCommutingDef.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115386
91177308-0d34-0410-b5e6-
96231b3b80d8