Devang Patel [Thu, 25 Jan 2007 22:27:00 +0000 (22:27 +0000)]
Remove dead code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33506
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 25 Jan 2007 22:25:04 +0000 (22:25 +0000)]
- Tell PEI that PPC will handle stack frame rounding itself.
- Do not round up to max. alignment of stack object if it is > stack alignment.
It will have to be handled with dynamic aligning code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33505
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 25 Jan 2007 22:12:41 +0000 (22:12 +0000)]
Added a MRegisterInfo hook that tells PEI the target is responsible for
rounding the stack frame to a multiple of stack alignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33504
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Thu, 25 Jan 2007 22:11:02 +0000 (22:11 +0000)]
fix fcopysign test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33503
91177308-0d34-0410-b5e6-
96231b3b80d8
Lauro Ramos Venancio [Thu, 25 Jan 2007 20:11:04 +0000 (20:11 +0000)]
Fix elf object definition.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33502
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 25 Jan 2007 19:43:52 +0000 (19:43 +0000)]
Doh. Skip JT branches.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33501
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 25 Jan 2007 17:38:26 +0000 (17:38 +0000)]
Make llvm-extract preserve the callingconv of prototypes in the extracted
code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33500
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 25 Jan 2007 15:45:58 +0000 (15:45 +0000)]
1. Remove dwarf-verbose option (now asm-verbose.)
2. Clean up end of lines.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33499
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Thu, 25 Jan 2007 15:12:02 +0000 (15:12 +0000)]
Migrate print routines to asm to be shared by exception handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33498
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 25 Jan 2007 03:12:46 +0000 (03:12 +0000)]
Added (preliminary) branch shortening capability to constantpool island pass.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33497
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 25 Jan 2007 03:07:27 +0000 (03:07 +0000)]
Getting rid uses of evil std::set<>
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33496
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 25 Jan 2007 02:53:24 +0000 (02:53 +0000)]
Fix test/CFrontend/2007-01-24-InlineAsmCModifier.c on X86. The %c modifier
says that no $ prefix should be emitted on X86.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33495
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 25 Jan 2007 02:52:50 +0000 (02:52 +0000)]
Fix test/CFrontend/2007-01-24-InlineAsmCModifier.c on PPC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33494
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 25 Jan 2007 02:52:33 +0000 (02:52 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33493
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Wed, 24 Jan 2007 21:09:16 +0000 (21:09 +0000)]
FTOIT and ITOFT are bit converts, and if we drop 21264s, are always available
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33492
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 24 Jan 2007 19:15:24 +0000 (19:15 +0000)]
Call frames for intel.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33490
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 24 Jan 2007 18:50:57 +0000 (18:50 +0000)]
80 columns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33489
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 24 Jan 2007 18:45:13 +0000 (18:45 +0000)]
Repair debug frames as a prelude to eh_frames. Switched to using MachineMoves
by value so that clean up is less confusing (these vectors tend to be small.)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33488
91177308-0d34-0410-b5e6-
96231b3b80d8
Andrew Lenharth [Wed, 24 Jan 2007 18:43:14 +0000 (18:43 +0000)]
Fix unordered fp on alpha
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33487
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 24 Jan 2007 18:31:00 +0000 (18:31 +0000)]
Fix a misencoding of CBW and CWD. This fixes PR1030.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33486
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Wed, 24 Jan 2007 13:12:32 +0000 (13:12 +0000)]
Use asm printer to emit alignment
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33485
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Jan 2007 08:53:17 +0000 (08:53 +0000)]
Use PC relative ldr to load from a constantpool in Thumb mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33484
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 07:13:56 +0000 (07:13 +0000)]
Make ivars private and use getters. Have the MachOWriter return "Mach-O
Writer" for the pass name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33483
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Jan 2007 07:03:39 +0000 (07:03 +0000)]
Renamed getTypeAlignmentShift() to getPreferredTypeAlignmentShift().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33482
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:42:03 +0000 (03:42 +0000)]
Added new files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33481
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:41:36 +0000 (03:41 +0000)]
Add a field for and construction of the PPCMachOWriterInfo object.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33480
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:40:33 +0000 (03:40 +0000)]
Move the getJTRelocation method out of here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33479
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:38:47 +0000 (03:38 +0000)]
Use the TargetMachOWriterInfo class to get this information.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33478
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:38:14 +0000 (03:38 +0000)]
A virtual method to return the TargetMachOWriterInfo object. This returns
a real value in derived classes, of course.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33477
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:37:18 +0000 (03:37 +0000)]
Moved target-specific information to the TargetMachOWriterInfo obj.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33476
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Wed, 24 Jan 2007 03:36:05 +0000 (03:36 +0000)]
New "TargetMachOWriterInfo" class. It holds target-specific information
that the MachOWriter needs in order to do its writing stuff 'n things.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33475
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Jan 2007 02:45:25 +0000 (02:45 +0000)]
Allow [ fi#c, imm ] as ARM load / store addresses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33474
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Jan 2007 02:27:03 +0000 (02:27 +0000)]
Added some load from stack frames test cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33473
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 24 Jan 2007 02:21:22 +0000 (02:21 +0000)]
Various Thumb mode load / store isel bug fixes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33472
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 23:28:50 +0000 (23:28 +0000)]
Thumb test cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33471
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 22:59:13 +0000 (22:59 +0000)]
- Reorg Thumb load / store instructions. Combine each rr and ri pair of
instructions into one (e.g. tLDRrr, tLDRri -> tLDR).
- Thumb ldrsb and ldrsh only have the [reg, reg] address format. If the
address is not an add, materialize a 0 immediate into a register and use
it as the offset field.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33470
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Jan 2007 22:56:28 +0000 (22:56 +0000)]
Fix cut-n-pasto.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33469
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 22:47:58 +0000 (22:47 +0000)]
Thumb test cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33468
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Jan 2007 21:55:17 +0000 (21:55 +0000)]
Fix typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33467
91177308-0d34-0410-b5e6-
96231b3b80d8
Devang Patel [Tue, 23 Jan 2007 21:52:35 +0000 (21:52 +0000)]
Add CallGraphSCCPass::assignPassManager().
This enables CalLGraphPassManager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33466
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 19:06:03 +0000 (19:06 +0000)]
Darwin HiddenDirective is .private_extern.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33465
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 17:49:33 +0000 (17:49 +0000)]
Fix test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33464
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 23 Jan 2007 12:43:53 +0000 (12:43 +0000)]
One more small fix to documentation
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33463
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 23 Jan 2007 12:35:46 +0000 (12:35 +0000)]
Updating documentation:
- Document visibility stuff
- Fix gcc' supported attributes list
- Document udis86 configure option
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33462
91177308-0d34-0410-b5e6-
96231b3b80d8
Anton Korobeynikov [Tue, 23 Jan 2007 10:26:08 +0000 (10:26 +0000)]
Moved disassembler to libSystem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33461
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 09:38:11 +0000 (09:38 +0000)]
PEI is now responsible for adding MaxCallFrameSize to frame size and align the stack. Each target can further adjust the frame size if necessary.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33460
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Jan 2007 04:59:58 +0000 (04:59 +0000)]
fix typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33459
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Jan 2007 01:16:19 +0000 (01:16 +0000)]
make the SmallSet interface more std::set-like
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33458
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Jan 2007 00:59:48 +0000 (00:59 +0000)]
Switch this to use SmallSet to avoid mallocs in the common case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33457
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Jan 2007 00:59:15 +0000 (00:59 +0000)]
add a trivial SmallSet class, which operates on a similar principle to
SmallVector.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33456
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Tue, 23 Jan 2007 00:57:47 +0000 (00:57 +0000)]
hasFP() is now a virtual method of MRegisterInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33455
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 23 Jan 2007 00:36:17 +0000 (00:36 +0000)]
Fix a bunch of inline asm failures
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33454
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:18:10 +0000 (23:18 +0000)]
Make it work for both Linux and Mac OS.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33451
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:14:52 +0000 (23:14 +0000)]
Update comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33450
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:13:55 +0000 (23:13 +0000)]
Remove the DoubleTy special case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33449
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:13:01 +0000 (23:13 +0000)]
ARM AAPCS abi (Linux, etc.) requires 8-byte double / long alignment; Mac
requires 4-bytes alignment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33448
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:11:06 +0000 (23:11 +0000)]
Double and long preferred alignment set to 8 bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33447
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:09:50 +0000 (23:09 +0000)]
Double and long preferred alignment is 8 byte.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33446
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:08:19 +0000 (23:08 +0000)]
- getTypeAlignmentShift() should be returning preferred alignment, not ABI
alignment.
- getPreferredAlignmentLog(): remove Double special case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33445
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 23:01:22 +0000 (23:01 +0000)]
Pasto
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33444
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 21:34:25 +0000 (21:34 +0000)]
Linux GOT indirect reference is only necessary in PIC mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33441
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 21:24:13 +0000 (21:24 +0000)]
Double and Long preferred alignment is 4 for Darwin, 8 for Linux.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33440
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 19:40:10 +0000 (19:40 +0000)]
Use bl to call Thumb fuctions directly.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33433
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Mon, 22 Jan 2007 18:57:39 +0000 (18:57 +0000)]
Fix test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33432
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Laskey [Mon, 22 Jan 2007 14:13:45 +0000 (14:13 +0000)]
Bring up to date.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33428
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Mon, 22 Jan 2007 05:51:25 +0000 (05:51 +0000)]
Cleanup checks in the load and store of casted pointer transforms. Two
changes: (1) don't special case for i1 any more, (2) use the new
TargetData::getTypeSizeInBits method to ensure source and dest are the
same bit width.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33427
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Sun, 21 Jan 2007 19:30:52 +0000 (19:30 +0000)]
Fix a bunch of missing semicolon parse errors from bison.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33426
91177308-0d34-0410-b5e6-
96231b3b80d8
Jeff Cohen [Sun, 21 Jan 2007 19:19:31 +0000 (19:19 +0000)]
Fix this error:
llvm[2]: Compiling llvmAsmParser.cpp for Debug build
/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y: In function 'int llvmAsmparse()':
/usr/home/jeffc/llvm/lib/AsmParser/llvmAsmParser.y:1846: error: expected `;' before '}' token
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33425
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 15:53:18 +0000 (15:53 +0000)]
Run GenLibDeps.pl with the configured PERL path to handle different install
locations for Perl on different systems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33424
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 21 Jan 2007 07:03:37 +0000 (07:03 +0000)]
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33423
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 06:42:03 +0000 (06:42 +0000)]
Regenerate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33422
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 06:41:11 +0000 (06:41 +0000)]
Fix the TARGET_HAS_JIT settings. Sparc doesn't, x86_64 does, ARM doesn't.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33421
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 21 Jan 2007 06:34:18 +0000 (06:34 +0000)]
default to emiting an uncompressed .bc file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33420
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 06:32:59 +0000 (06:32 +0000)]
For PR1128:
Regenerate for ARM support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33419
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 06:31:55 +0000 (06:31 +0000)]
Add support for the ARM target in the target configuration processing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33418
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 02:29:10 +0000 (02:29 +0000)]
Whoops, fix typo in last commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33417
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 21 Jan 2007 00:56:42 +0000 (00:56 +0000)]
new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33416
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 21 Jan 2007 00:29:26 +0000 (00:29 +0000)]
For PR970:
Clean up handling of isFloatingPoint() and dealing with PackedType.
Patch by Gordon Henriksen!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33415
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 23:35:48 +0000 (23:35 +0000)]
Revise the store V, (cast P) -> store (cast V) -> P transform.
We only want to do this if the src and destination types have the same
bit width. This patch uses TargetData::getTypeSizeInBits() instead of
making a special case for integer types and avoiding the transform if
they don't match.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33414
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 23:32:04 +0000 (23:32 +0000)]
Implement a getTypeSizeInBits method. This helps in transforms that want
to ensure the bit size of a type is identical before proceeding.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33413
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 23:21:08 +0000 (23:21 +0000)]
Initial template for the 2.0 Bitcode format that will replace the 1.x
Bytecode format.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33412
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sat, 20 Jan 2007 23:07:13 +0000 (23:07 +0000)]
TargetData assumes (and some regression tests depend on it) that the size of
an unspecified datatype in the datalayout is capped by the size of a pointer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33411
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Jan 2007 22:39:15 +0000 (22:39 +0000)]
trivial cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33410
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Jan 2007 22:35:55 +0000 (22:35 +0000)]
Teach TargetData to handle 'preferred' alignment for each target, and use
these alignment amounts to align scalars when we can. Patch by Scott Michel!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33409
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sat, 20 Jan 2007 20:51:43 +0000 (20:51 +0000)]
DOUT still evaluates side effects, even though it doesn't print. This means
that disassembleBuffer will be called even if NDEBUG, but the result will
be ignored.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33408
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 20:45:39 +0000 (20:45 +0000)]
For PR808:
Regenerate to include NetBSD.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33407
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 20:44:38 +0000 (20:44 +0000)]
For PR808:
NetBSD also doesn't have pthread_mutexattr_setpshared
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33406
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 20:43:35 +0000 (20:43 +0000)]
For PR808:
Add support for NetBSD.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33405
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 20:30:13 +0000 (20:30 +0000)]
Try a negative number with ashr.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33404
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 20:12:29 +0000 (20:12 +0000)]
Implement the signed icmp instructions properly. To do this we introduce
a small inline function to sign extend a uint64_t value based on its
type's bitwidth. This function is then used in both executeSExtInst and
the various executeICMP_S** functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33403
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 20 Jan 2007 10:22:33 +0000 (10:22 +0000)]
Round up stack to multiple of alignment only if it's a leaf function without alloca.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33401
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 20 Jan 2007 10:17:53 +0000 (10:17 +0000)]
One more try...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33400
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 20 Jan 2007 10:11:56 +0000 (10:11 +0000)]
Last check-in was bogus. There is no need to align the stack if the function is a leaf function (and without alloca).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33399
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 20 Jan 2007 10:10:26 +0000 (10:10 +0000)]
Fix for PR1108: type of insert_vector_elt index operand is PtrVT, not MVT::i32.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33398
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sat, 20 Jan 2007 10:07:23 +0000 (10:07 +0000)]
Correct a comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33397
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Sat, 20 Jan 2007 09:21:54 +0000 (09:21 +0000)]
Remove an unused variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33396
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Sat, 20 Jan 2007 08:48:05 +0000 (08:48 +0000)]
Fix incorrect run line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33395
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 08:32:52 +0000 (08:32 +0000)]
Implement bit-accurate sext instruction.
This patch fixes test/Integer/2007-01-17-TruncSext.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33394
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 08:31:45 +0000 (08:31 +0000)]
Add a test case for sext bug that Leo found.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33393
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sat, 20 Jan 2007 07:48:49 +0000 (07:48 +0000)]
Regenerate for Anton Korobeynikov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33392
91177308-0d34-0410-b5e6-
96231b3b80d8