Erick Tryzelaar [Fri, 14 Aug 2009 00:01:31 +0000 (00:01 +0000)]
Expose LLVMContext to llvm-c.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78964
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 23:56:34 +0000 (23:56 +0000)]
Fix MCSectionELF::ShouldOmitSectionDirective's matching of .data and
friends so that it doesn't match sections like .data.rel.local, which
should not be emitted as section directives.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78963
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 23:48:47 +0000 (23:48 +0000)]
TargetRegistry: Change AsmPrinter constructor to be typed as returning an
AsmPrinter instance (instead of just a FunctionPass)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78962
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 23:47:58 +0000 (23:47 +0000)]
Mark this test as requiring the powerpc target.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78961
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 23:36:34 +0000 (23:36 +0000)]
llvm-mc: Add dummy MCStreamer implementation, (eventually) for use in profiling.
- Currently unused.
- A few other random comment fixes lumped in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78960
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 13 Aug 2009 23:30:21 +0000 (23:30 +0000)]
Remove HasCrazyBSS and add a flag in TAI to indicate that '.section'
must be emitted for PowerPC-Linux '.bss' section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78958
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 13 Aug 2009 23:27:32 +0000 (23:27 +0000)]
Actually privatize a IntegerTypes, and fix a few bugs exposed by this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78955
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 23:18:56 +0000 (23:18 +0000)]
When standard output is a terminal, set outs() to be unbuffered, to
mimic the behavior of stdtout, which is line-buffered when the output
is a terminal. This fixes some issues with bugpoint output appearing
being printed out of order.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78953
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 23:16:59 +0000 (23:16 +0000)]
Make formatted_raw_ostream restore the buffer settings of the
underlying stream when it is finished, so that clients don't
have to do this manually.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78952
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 23:07:11 +0000 (23:07 +0000)]
Take the fast path for any named value and any GlobalValue, which doesn't
need TypePrinting despite being a subclass of Constant. This fixes
compile-time problems especially visible on 403.gcc when -asm-verbose is
enabled.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78951
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 13 Aug 2009 21:58:54 +0000 (21:58 +0000)]
Push LLVMContexts through the IntegerType APIs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78948
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 13 Aug 2009 21:25:27 +0000 (21:25 +0000)]
Remove hack used to strip unwanted chars from section name
Use MCSectionELF methods as much as possible, removing some
ELFWriter methods which are now unused
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78940
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 13 Aug 2009 21:10:28 +0000 (21:10 +0000)]
Add a method to return BSSSection from TargetLoweringObjectFile
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78939
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 13 Aug 2009 21:08:56 +0000 (21:08 +0000)]
Add a method to return if the ELF section contains only common symbols!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78937
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 20:43:13 +0000 (20:43 +0000)]
Add unimplemented destructor declarations to hopefully address
compiler warnings on windows (PR4714).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78934
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 20:32:03 +0000 (20:32 +0000)]
Fix a compiler warning about comparing signed with unsigned.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78933
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 13 Aug 2009 20:29:30 +0000 (20:29 +0000)]
* Moved all tool version requirements to the same place
* Cleaned up multiple uses of literal version numbers and simplified 'cleaning'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78932
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 13 Aug 2009 20:12:48 +0000 (20:12 +0000)]
Converted tabs to spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78931
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Thu, 13 Aug 2009 20:08:52 +0000 (20:08 +0000)]
Grammar fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78930
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 19:55:51 +0000 (19:55 +0000)]
Tweak svn:ignore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78929
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 19:38:51 +0000 (19:38 +0000)]
TargetRegistry: Reorganize AsmPrinter construction so that clients pass in the
TargetAsmInfo. This eliminates a dependency on TargetMachine.h from
TargetRegistry.h, which technically was a layering violation.
- Clients probably can only sensibly pass in the same TargetAsmInfo as the
TargetMachine has, but there are only limited clients of this API.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78928
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 18:38:15 +0000 (18:38 +0000)]
Add an assert to check copy_to_buffer's precondition.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78926
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 17:41:40 +0000 (17:41 +0000)]
Set raw_os_ostream, raw_string_ostream, and raw_svector_ostream to be
unbuffered. std::ostream does its own buffering, and std::string and
SmallVector both have allocation strategies intended to handle frequent
appending.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78924
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 17:27:29 +0000 (17:27 +0000)]
Add support to raw_ostream for sizing the buffer according to the
needs of the underlying output mechanism. raw_fd_ostream now uses
st_blksize from fstat to determine a buffer size.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78923
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 17:22:49 +0000 (17:22 +0000)]
Add temporary hack to teach LLVM to reconfigure itself to pick up the new PIC16
AsmPrinter (in AsmPrinters.def).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78922
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 17:08:54 +0000 (17:08 +0000)]
Reapply pieces of 78914 reverted in 78916, this has been fixed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78921
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 17:07:08 +0000 (17:07 +0000)]
Make raw_ostream non-copyable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78920
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 17:03:38 +0000 (17:03 +0000)]
Revert 78892 and 78895, these break generating working executables on
x86_64-apple-darwin10.
--- Reverse-merging r78895 into '.':
U test/CodeGen/PowerPC/2008-12-12-EH.ll
U lib/Target/DarwinTargetAsmInfo.cpp
--- Reverse-merging r78892 into '.':
U include/llvm/Target/DarwinTargetAsmInfo.h
U lib/Target/X86/X86TargetAsmInfo.cpp
U lib/Target/X86/X86TargetAsmInfo.h
U lib/Target/ARM/ARMTargetAsmInfo.h
U lib/Target/ARM/ARMTargetMachine.cpp
U lib/Target/ARM/ARMTargetAsmInfo.cpp
U lib/Target/PowerPC/PPCTargetAsmInfo.cpp
U lib/Target/PowerPC/PPCTargetAsmInfo.h
U lib/Target/PowerPC/PPCTargetMachine.cpp
G lib/Target/DarwinTargetAsmInfo.cpp
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78919
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 13 Aug 2009 16:59:44 +0000 (16:59 +0000)]
Add missing defs of R2 and D1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78918
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 16:57:03 +0000 (16:57 +0000)]
Remove obsoleted files (from AsmPrinter move)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78917
91177308-0d34-0410-b5e6-
96231b3b80d8
Owen Anderson [Thu, 13 Aug 2009 16:54:39 +0000 (16:54 +0000)]
Revert r78914, as it was breaking the build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78916
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 16:51:51 +0000 (16:51 +0000)]
Simplify this code so that it doesn't depend on raw_ostream being copyable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78915
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjiv Gupta [Thu, 13 Aug 2009 16:37:05 +0000 (16:37 +0000)]
Move PIC16 AsmPrinter to PIC16/AsmPrinter directory.
Remove CooperTargetMachine, as currently only one is supported.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78914
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 13 Aug 2009 16:20:04 +0000 (16:20 +0000)]
Track pristine registers as if they were live-in in the register scavenger.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78913
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 13 Aug 2009 16:19:51 +0000 (16:19 +0000)]
Use pristine register info in machine code verifier.
So far these registers are simply tracked as if they were live-in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78912
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 13 Aug 2009 16:19:33 +0000 (16:19 +0000)]
Add MachineFrameInfo::getPristineRegisters(MBB) method.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78911
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Thu, 13 Aug 2009 16:05:04 +0000 (16:05 +0000)]
Add callback to allow target to adjust latency of schedule dependency edge.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78910
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 15:58:55 +0000 (15:58 +0000)]
Move SetBufferSize and SetUnbuffered out of line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78909
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Thu, 13 Aug 2009 15:51:13 +0000 (15:51 +0000)]
Finalize itineraries for cortex-a8 integer multiply
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78908
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 15:44:52 +0000 (15:44 +0000)]
Fix the buffer handling logic so that write_impl is always called with
a full buffer, rather than often being called with a
slightly-less-than-full buffer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78907
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 15:27:57 +0000 (15:27 +0000)]
Fix a 4x slowdown in llc -asm-verbose caused by the use of
WriteAsOperand in more places.
Now that more things are using WriteAsOperand, its behavior of
constructing a TypePrinting object and populating it with strings for all
the numbered types in the Module on each call is a significant bottleneck.
Fancier solutions could be pursued here, but for now, just bypass the
TypePrinting overhead in obvious cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78906
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 13 Aug 2009 15:12:16 +0000 (15:12 +0000)]
Remove unnecessary newline
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78905
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Thu, 13 Aug 2009 15:11:43 +0000 (15:11 +0000)]
Correct comment wording
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78904
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 06:28:06 +0000 (06:28 +0000)]
reintroduce support for Mips "small" section handling. This is
implemented somewhat differently than before, but it should have
the same functionality and the previous testcase passes again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78900
91177308-0d34-0410-b5e6-
96231b3b80d8
Jakob Stoklund Olesen [Thu, 13 Aug 2009 06:24:02 +0000 (06:24 +0000)]
Fix the N>=64 case in the isInt<> and isUint<> templates.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78899
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 13 Aug 2009 06:05:07 +0000 (06:05 +0000)]
tPOP_RET now has predicate operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78898
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 13 Aug 2009 06:01:30 +0000 (06:01 +0000)]
Add a fixme message about canonicalizing floating-point vector types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78897
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 13 Aug 2009 05:58:56 +0000 (05:58 +0000)]
Revert r78852 for now. I want to do this differently, but I don't have time
to fix it tonight.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78896
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 05:43:33 +0000 (05:43 +0000)]
fix typo, add 10.6 version of test for my previous patch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78895
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 05:41:27 +0000 (05:41 +0000)]
Restore some "small section" support code, reverting my patch from r76936.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78894
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Thu, 13 Aug 2009 05:40:51 +0000 (05:40 +0000)]
It's ok to spill a tGPR register as long as it's still allocated a low register.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78893
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 05:30:22 +0000 (05:30 +0000)]
fix a minor fixme. When building with SL and later tools, the ".eh" symbols
don't need to be exported from the .o files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78892
91177308-0d34-0410-b5e6-
96231b3b80d8
Mon P Wang [Thu, 13 Aug 2009 05:12:13 +0000 (05:12 +0000)]
When InstCombine simplifies a load -> extract element to gep -> load, place
the new load by the old load instead of by the extract element because
a store could have occurred between the load and extract element.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78891
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Thu, 13 Aug 2009 05:07:35 +0000 (05:07 +0000)]
Change MCSectionELF to represent a section semantically instead of
syntactically as a string, very similiar to what Chris did with MachO.
The parsing support and validation is not introduced yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78890
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Bolka [Thu, 13 Aug 2009 03:05:20 +0000 (03:05 +0000)]
Simplify conditional.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78889
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Bolka [Thu, 13 Aug 2009 03:00:57 +0000 (03:00 +0000)]
Simplify and reduce indentation using early exits.
No intended functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78888
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Bolka [Thu, 13 Aug 2009 02:45:03 +0000 (02:45 +0000)]
DEBUGify some DOUTs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78887
91177308-0d34-0410-b5e6-
96231b3b80d8
Andreas Bolka [Thu, 13 Aug 2009 02:40:50 +0000 (02:40 +0000)]
Prune trailing whitespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78886
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 02:33:34 +0000 (02:33 +0000)]
Convert APint::{fromString,APInt,getBitsNeeded} to use StringRef.
- Patch by Erick Tryzelaar, with some edits (and a bug fix) from me.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78885
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 13 Aug 2009 02:13:04 +0000 (02:13 +0000)]
Add a comment to describe why vector shuffles are legalized to custom DAG nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78884
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 02:03:30 +0000 (02:03 +0000)]
Add StringRef::front (with some small tweaks while I was in the area).
- Patch by Erick Tryzelaar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78883
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Thu, 13 Aug 2009 01:57:47 +0000 (01:57 +0000)]
Use cast<> instead of dyn_cast<> in places where the type is known.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78881
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Dunbar [Thu, 13 Aug 2009 01:55:43 +0000 (01:55 +0000)]
Update llvm-prof for ProfileInfo API changes.
- Patch by Erick Tryzelaar
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78880
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 01:41:52 +0000 (01:41 +0000)]
Change the indentation for LLVM Assembly files from 1 tab to 2 spaces.
This is vaguely consistent with LLVM's own source code, but more
importantly it lets more lines stay within 80 columns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78879
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Thu, 13 Aug 2009 01:36:44 +0000 (01:36 +0000)]
Various AsmWriter output cleanups. Use WriteAsOperand instead of
PrintUnmangledNameSafely.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78878
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 00:37:15 +0000 (00:37 +0000)]
sink uniquing of sections out of MCContext into the ELF and PECOFF TLOF implementations.
MCContext no longer maintains a string -> section map.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78874
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Thu, 13 Aug 2009 00:28:52 +0000 (00:28 +0000)]
Symbols with LinkerPrivateLinkage are weak.
This allows WebKit to build again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78872
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 00:26:52 +0000 (00:26 +0000)]
make PIC16 unique its own sections instead of having mcontext do it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78871
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 00:21:53 +0000 (00:21 +0000)]
add some comments: MCContext owns the MCSections, but it bump pointer allocates
them, so it doesn't have to explicitly free them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78870
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 13 Aug 2009 00:05:07 +0000 (00:05 +0000)]
reject invalid code like:
int x __attribute__((section("_foo, _bar"))) = 4;
int y __attribute__((section("_foo, _bar, 4byte_literals"))) = 1;
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78867
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 12 Aug 2009 23:55:02 +0000 (23:55 +0000)]
implement support for uniquing MachO sections.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78866
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 23:54:22 +0000 (23:54 +0000)]
Now that numbered types have their number printed, it's no longer
interesting to print the number in a comment. Numbered instructions
don't need their number in a comment either.
Also, tidy up newline printing.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78865
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 12 Aug 2009 23:53:59 +0000 (23:53 +0000)]
some compiler don't get string from TLOF.h implicitly or something.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78864
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 12 Aug 2009 23:34:27 +0000 (23:34 +0000)]
reduce #includage
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78860
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 23:32:33 +0000 (23:32 +0000)]
Extend the AsmWriter to print unnamed numbered types as "%0 = type ..."
and unnamed numbered global variables as "@0 = global ...". Extend the
AsmParser to recognize these forms.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78859
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 12 Aug 2009 23:03:43 +0000 (23:03 +0000)]
Mark the callsite intrinsic such that the opimizers know it's not dead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78856
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 12 Aug 2009 22:54:19 +0000 (22:54 +0000)]
Recognize Neon VDUP shuffles during legalization instead of selection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78852
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 12 Aug 2009 22:31:50 +0000 (22:31 +0000)]
Recognize Neon VREV shuffles during legalization instead of selection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78850
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 12 Aug 2009 22:30:59 +0000 (22:30 +0000)]
Add a new "SDTCisVec" SDTypeConstraint. This complements the vAny type.
There have been a few times where I've wanted this but ended up leaving the
operand type unconstrained. It is easy to add this now and should help
catch errors in the future.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78849
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 22:10:57 +0000 (22:10 +0000)]
This void is implicit in C++.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78848
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Wed, 12 Aug 2009 21:47:46 +0000 (21:47 +0000)]
Fix counting of Post-RA scheduling stalls. Improve debug output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78843
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 12 Aug 2009 21:19:49 +0000 (21:19 +0000)]
Add some release notes about ARM v7 support and known problems.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78842
91177308-0d34-0410-b5e6-
96231b3b80d8
Lang Hames [Wed, 12 Aug 2009 21:04:53 +0000 (21:04 +0000)]
Added RegisterCoalescer to required passes for PBQP.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78840
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 20:56:56 +0000 (20:56 +0000)]
Use WriteAsOperand to print BasicBlock names.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78838
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 20:56:03 +0000 (20:56 +0000)]
Make AsmWriter more careful with formatted_raw_ostream so that
it doesn't leave the underlying stream in unbuffered mode when
the stream was originally buffered.
Also, change WriteAsOperand back to plain raw_ostream. This
lets it work for either formatted_raw_ostream or plain
raw_ostream, so that it doesn't have to force a buffer flush
on a plain raw_ostream.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78837
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 20:52:45 +0000 (20:52 +0000)]
Add a GetBufferSize() member to raw_ostream and use it to
simplify some formatted_raw_ostream code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78836
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 12 Aug 2009 20:51:55 +0000 (20:51 +0000)]
Generate Neon VTBL and VTBX instructions from the corresponding intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78835
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 18:55:32 +0000 (18:55 +0000)]
Use PadToColumn instead of tabs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78834
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 18:47:05 +0000 (18:47 +0000)]
Fix a few more places to use PadToColumn instead of tabs. And fix
the basic block label printing to check whether a block has a name
before printing a comment character and whitespace for it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78830
91177308-0d34-0410-b5e6-
96231b3b80d8
Evan Cheng [Wed, 12 Aug 2009 18:35:50 +0000 (18:35 +0000)]
PredCC is meant to be 2 bits wide, like PredCC1.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78829
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 18:32:22 +0000 (18:32 +0000)]
Use PadToColumn instead of tabs for aligning comments. Fix one place
that emitted unnecessary whitespace outside of VerboseAsm mode.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78828
91177308-0d34-0410-b5e6-
96231b3b80d8
David Goodwin [Wed, 12 Aug 2009 18:31:53 +0000 (18:31 +0000)]
Enhance the InstrStage object to enable the specification of an Itinerary with overlapping stages. The default is to maintain the current behavior that the "next" stage immediately follows the previous one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78827
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 12 Aug 2009 18:04:11 +0000 (18:04 +0000)]
Add attempted idiotproofing comment per review.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78825
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 12 Aug 2009 17:47:06 +0000 (17:47 +0000)]
improve win32 path support, patch by Baptiste Lepilleur!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78823
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 12 Aug 2009 17:43:47 +0000 (17:43 +0000)]
Test for 78821, sort of. While that bug is nondeterministic,
this test failed consistently on a Darwin build.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78822
91177308-0d34-0410-b5e6-
96231b3b80d8
Dale Johannesen [Wed, 12 Aug 2009 17:42:34 +0000 (17:42 +0000)]
Fix a nondeterministic bug in APInt::roundToDouble;
when !isSingleWord() but getActiveBits() is small,
we were using the pointer value instead of the low
word of the integer value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78821
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 17:39:04 +0000 (17:39 +0000)]
Fix whitespace expectations to match the new AsmWriter behavior.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78819
91177308-0d34-0410-b5e6-
96231b3b80d8
Jim Grosbach [Wed, 12 Aug 2009 17:38:44 +0000 (17:38 +0000)]
Add catch block handling to SjLj exception handling.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78817
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Wed, 12 Aug 2009 17:23:50 +0000 (17:23 +0000)]
Make LLVM Assembly dramatically easier to read by aligning the comments,
using formatted_raw_ostream's PadToColumn.
Before:
bb1: ; preds = %bb
%2 = sext i32 %i.01 to i64 ; <i64> [#uses=1]
%3 = getelementptr double* %p, i64 %2 ; <double*> [#uses=1]
%4 = load double* %3, align 8 ; <double> [#uses=1]
%5 = fmul double %4, 1.
100000e+00 ; <double> [#uses=1]
%6 = sext i32 %i.01 to i64 ; <i64> [#uses=1]
%7 = getelementptr double* %p, i64 %6 ; <double*> [#uses=1]
After:
bb1: ; preds = %bb
%2 = sext i32 %i.01 to i64 ; <i64> [#uses=1]
%3 = getelementptr double* %p, i64 %2 ; <double*> [#uses=1]
%4 = load double* %3, align 8 ; <double> [#uses=1]
%5 = fmul double %4, 1.
100000e+00 ; <double> [#uses=1]
%6 = sext i32 %i.01 to i64 ; <i64> [#uses=1]
%7 = getelementptr double* %p, i64 %6 ; <double*> [#uses=1]
Several tests required whitespace adjustments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78816
91177308-0d34-0410-b5e6-
96231b3b80d8
Bob Wilson [Wed, 12 Aug 2009 17:04:56 +0000 (17:04 +0000)]
Fix TableGen warnings. This partly reverts my previous change to this file,
leaving the mayLoad and mayStore settings around only the load/store
instructions where those can't be inferred from the patterns.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78815
91177308-0d34-0410-b5e6-
96231b3b80d8