Devang Patel
beb5774035
s/ConstructType/ConstructTypeDIE/g
...
llvm-svn: 61731
2009-01-05 19:07:53 +00:00
Devang Patel
c1998b026f
Construct stuct field DIEs.
...
llvm-svn: 61729
2009-01-05 18:59:44 +00:00
Chris Lattner
b01c512756
fix wordo
...
llvm-svn: 61728
2009-01-05 18:56:52 +00:00
Steve Naroff
767201ceb7
Remove redundant ValID::ValID:: scoping (doesn't compile on Windows).
...
llvm-svn: 61727
2009-01-05 18:48:47 +00:00
Devang Patel
de65ed6370
Construct enumerator DIE using DebugInfo.
...
llvm-svn: 61726
2009-01-05 18:38:38 +00:00
Chris Lattner
f543d03f11
Reject PR3281:accepted03.ll with:
...
llvm-as: accepted03.ll:1:35: invalid unresolved type up reference
declare void @r({ \7, opaque, \10 } %su)
^
llvm-svn: 61725
2009-01-05 18:34:07 +00:00
Devang Patel
c4c51439bf
Construct array/vector type DIEs using DebugInfo.
...
llvm-svn: 61724
2009-01-05 18:33:01 +00:00
Owen Anderson
28649f1598
Get rid of sentinel insertion in interval reconstruction. It just masked the
...
problem, rather than fixing it. The problem has now been fixed the right way.
llvm-svn: 61723
2009-01-05 18:32:26 +00:00
Chris Lattner
2f04085542
reject PR3281:crash11.ll with:
...
llvm-as: crash11.ll:2:27: function may not return return opaque type
"xw" = tail call opaque @608(label %31)
^
llvm-svn: 61722
2009-01-05 18:27:50 +00:00
Chris Lattner
069abb5938
reject PR3281:crash10.ll with:
...
llvm-as: crash10.ll:3:35: floating point constant does not have type 'ppc_fp128'
"dumy" = fcmp ult ppc_fp128 "j",9209.4
^
llvm-svn: 61721
2009-01-05 18:24:23 +00:00
Chris Lattner
67e73e6d75
reject PR3281:crash09.ll with this diagnostic:
...
llvm-as: crash09.ll:3:1: self referential type is invalid
type %0
^
llvm-svn: 61720
2009-01-05 18:19:46 +00:00
Chris Lattner
a87b200aae
allow opaque undefs. This resolves PR3282 and fixes
...
test/Assembler/2005-05-05-OpaqueUndefValues.ll
llvm-svn: 61719
2009-01-05 18:12:21 +00:00
Dan Gohman
8271066844
Tidy up #includes, deleting a bunch of unnecessary #includes.
...
llvm-svn: 61715
2009-01-05 17:59:02 +00:00
Devang Patel
38d7f4dc2c
Construct basic and derived type DIEs using DebugInfo.
...
llvm-svn: 61714
2009-01-05 17:57:47 +00:00
Devang Patel
bf19721647
subsume ConstructPointerType()
...
llvm-svn: 61711
2009-01-05 17:45:59 +00:00
Devang Patel
24288bc651
subsume ConstructBasicType().
...
llvm-svn: 61709
2009-01-05 17:44:11 +00:00
Devang Patel
689e130117
squash warnings.
...
llvm-svn: 61707
2009-01-05 17:31:22 +00:00
Gabor Greif
29126c8ad0
another fix to my previous commit:
...
* some picky <g> compilers get insulted by const-incorrectness
* respect 80-char limit
llvm-svn: 61701
2009-01-05 17:19:25 +00:00
Evan Cheng
b3026de547
Fix misplaced right parentheses.
...
llvm-svn: 61699
2009-01-05 17:17:04 +00:00
Gabor Greif
21349e4801
eliminate tabs from my previous commit
...
llvm-svn: 61695
2009-01-05 16:28:14 +00:00
Gabor Greif
3b91310e36
Get rid of the tagging functions and use PointerIntPair.
...
This means that we have to include an additional header.
This patch should be functionally equivalent. I cannot outrule any performance
degradation, though I do not expect any.
llvm-svn: 61694
2009-01-05 16:05:32 +00:00
Evan Cheng
d2ffa1f122
Atom and Core i7 do not have same model number after all.
...
llvm-svn: 61686
2009-01-05 08:45:01 +00:00
Chris Lattner
9bc5db2fa4
produce the same diagnostics for vicmp constant exprs as vicmp instructions.
...
llvm-svn: 61685
2009-01-05 08:26:05 +00:00
Chris Lattner
f6df8b7ec7
Fix PR3281:crash08.ll with this diagnostic:
...
llvm-as: crash08.ll:3:15: invalid operand type for instruction
"qp" = sdiv fp128 0x1, %30
^
llvm-svn: 61684
2009-01-05 08:24:46 +00:00
Chris Lattner
8de7fa4840
reject PR3281:crash07.ll with:
...
llvm-as: crash07.ll:2:32: va_arg requires operand with first class type
%y = va_arg [52 x <{}>] %43, double (...) sspreq
^
llvm-svn: 61683
2009-01-05 08:18:44 +00:00
Chris Lattner
6bbcc64cc0
reject undef/zero labels. This fixes PR3281:crash0[56].ll with these
...
diagnostics:
llvm-as: crash05.ll:1:14: invalid type for null constant
global label zeroinitializer addrspace (75), section "c"
^
llvm-as: crash06.ll:2:14: invalid type for null constant
udiv label zeroinitializer, @0
^
llvm-svn: 61681
2009-01-05 08:13:38 +00:00
Chris Lattner
6488ba2b78
add checking intentionally elided for vfcmp/vicmp since they should really
...
just be removed. However, this fixes PR3281:crash04.ll, diagnosing it with:
lvm-as: crash04.ll:2:13: vfcmp requires vector floating point operands
vfcmp uno double* undef, undef
^
llvm-svn: 61680
2009-01-05 08:09:48 +00:00
Chris Lattner
706b194790
diagnose PR3281:crash02.ll with:
...
llvm-as: crash02.ll:1:62: invalid function return type
declare { <{ <{}>, void ([1898 x { void ()* }], opaque, ...) (), fp128 * }>, opaque } @t ()
^
llvm-svn: 61679
2009-01-05 08:04:33 +00:00
Chris Lattner
121105b8d7
reject PR3281:crash01.ll with:
...
llvm-as: crash01.ll:1:9: invalid function return type
declare opaque @t()
^
llvm-svn: 61678
2009-01-05 08:00:30 +00:00
Chris Lattner
58f10e0439
tighten up return type check
...
llvm-svn: 61677
2009-01-05 07:58:59 +00:00
Chris Lattner
4269844a07
fix PR3281:accepted0[02].ll: represent empty arrays distinctly, and
...
diagnose attempts to initialize non-empty arrays with them. This
produces:
llvm-as: accepted02.ll:1:28: invalid empty array initializer
@"o" = global [5 x double] []
^
llvm-as: accepted00.ll:1:32: invalid empty array initializer
@"za" = thread_local global {} []
^
[
llvm-svn: 61676
2009-01-05 07:52:51 +00:00
Chris Lattner
92af77f45c
PR3281:crash00.ll: produce this diagnostic instead of crashing:
...
@t = global i8 0, align 3
^
llvm-svn: 61675
2009-01-05 07:46:05 +00:00
Dan Gohman
6d6dd15fc3
Handle weak_extern in the JIT. This fixes
...
SingleSource/UnitTests/2007-04-25-weak.c in JIT mode. The test
now passes on systems which are able to produce a correct
reference output to compare with.
llvm-svn: 61674
2009-01-05 05:32:42 +00:00
Scott Michel
733d5f71a0
CellSPU:
...
- Teach SPU64InstrInfo.td about the remaining signed comparisons, update tests
accordingly.
llvm-svn: 61672
2009-01-05 04:05:53 +00:00
Scott Michel
0d9d939406
CellSPU:
...
- Fix (brcond (setq ...)) bug, where BRNZ should have been used vice BRZ.
- Kill unused/unnecessary nodes in SPUNodes.td
- Beef out the i64operations.c test harness to use a lot of unaligned
loads, test loops and LLVM loop/basic block optimizations; run the
test harness successfully on real Cell hardware.
llvm-svn: 61664
2009-01-05 01:34:35 +00:00
Nick Lewycky
5616407df7
Move the libcall annotating part from doFinalization to doInitialization.
...
Finalization occurs after all the FunctionPasses in the group have run, which
is clearly not what we want.
This also means that we have to make sure that we apply the right param
attributes when creating a new function.
Also, add a missed optimization: strdup and strndup. NoCapture and
NoAlias return!
llvm-svn: 61658
2009-01-05 00:07:50 +00:00
Nick Lewycky
6ee6b1d3e2
Add a mechanism to specify attributes in getOrInsertFunction.
...
llvm-svn: 61645
2009-01-04 22:54:40 +00:00
Chris Lattner
a76e94a12e
Refactor some parser interfaces to fix PR3278 and a FIXME:
...
ParseAssemblyString with a specified module would not parse
into the module, it would create and return a new one.
llvm-svn: 61635
2009-01-04 20:44:11 +00:00
Nick Lewycky
6685977938
Run a post-pass that marks known function declarations by name.
...
llvm-svn: 61632
2009-01-04 20:27:34 +00:00
Chris Lattner
30de396459
elf writer really wants the size of the global, not the size
...
of the pointer to the global.
llvm-svn: 61630
2009-01-04 20:19:20 +00:00
Bill Wendling
d57191595b
Revert this transform. It was causing some dramatic slowdowns in a few tests. See PR3266.
...
llvm-svn: 61623
2009-01-04 06:19:11 +00:00
Bill Wendling
61bdc3d99e
The llvm::ELFWriter::EmitGlobal() method is calling the
...
llvm::PATypeHolder::get() method when LLVM is self-hosted in Release
mode. Before the parser changed, there was a definition of llvm::PAHolder::get()
in llvmAsmParser.y. This was probably a bug that no-one noticed.
Explicitly #include the Type.h file as a temporary fix for now.
llvm-svn: 61620
2009-01-04 01:47:14 +00:00
Dan Gohman
2a079de3f5
Fix a DAGCombiner abort on an invalid shift count constant. This fixes PR3250.
...
llvm-svn: 61613
2009-01-03 19:22:06 +00:00
Dan Gohman
8dc1513b6c
CommuteNodesToReducePressure() is now removed.
...
llvm-svn: 61612
2009-01-03 19:19:30 +00:00
Dan Gohman
6a518de5f5
Remove the code from the scheduler that commuted two-address
...
instructions to avoid copies, because TwoAddressInstructionPass
also does this optimization. The scheduler's version didn't
account for live-out values, which resulted in spurious commutes
and missed opportunities.
Now, TwoAddressInstructionPass handles all the opportunities,
instead of just those that the scheduler missed. The result is
usually the same, though there are occasional trivial differences
resulting from the avoidance of spurious commutes.
llvm-svn: 61611
2009-01-03 18:01:46 +00:00
Nick Lewycky
dfbc53093a
Any void readonly functions are provably dead, don't waste time adding
...
nocapture attributes to them.
llvm-svn: 61610
2009-01-03 17:05:32 +00:00
Evan Cheng
540a7a5e9b
Add Intel processors core i7 and atom.
...
llvm-svn: 61603
2009-01-03 04:24:44 +00:00
Evan Cheng
c477e19c19
Fix PR3210: Detect more Intel processors. Patch by Torok Edwin.
...
llvm-svn: 61602
2009-01-03 04:04:46 +00:00
Nick Lewycky
5222f155a0
We know it's always a SCEVConstant if it gets here, so just cast it and
...
inline the only use of isNegative. Fixes warning reported by Mike Stump.
llvm-svn: 61600
2009-01-03 01:53:24 +00:00
Scott Michel
0309418000
CellSPU:
...
- Remove custom lowering for BRCOND
- Add remaining functionality for branches in SPUInstrInfo, such as branch
condition reversal and load/store folding. Updated BrCond test to reflect
branch reversal.
llvm-svn: 61597
2009-01-03 00:27:53 +00:00