| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
it causes compile errors.
llvm-svn: 49122
|
| |
|
|
|
|
|
| |
now that llvm-gcc is lowering appropriately-sized struct returns
to i128 on x86-64.
llvm-svn: 49109
|
| |
|
|
| |
llvm-svn: 48801
|
| |
|
|
|
|
|
| |
marked read-write. Use const so that they can be allocated in a
read-only segment.
llvm-svn: 48800
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. There is now a "PAListPtr" class, which is a smart pointer around
the underlying uniqued parameter attribute list object, and manages
its refcount. It is now impossible to mess up the refcount.
2. PAListPtr is now the main interface to the underlying object, and
the underlying object is now completely opaque.
3. Implementation details like SmallVector and FoldingSet are now no
longer part of the interface.
4. You can create a PAListPtr with an arbitrary sequence of
ParamAttrsWithIndex's, no need to make a SmallVector of a specific
size (you can just use an array or scalar or vector if you wish).
5. All the client code that had to check for a null pointer before
dereferencing the pointer is simplified to just access the
PAListPtr directly.
6. The interfaces for adding attrs to a list and removing them is a
bit simpler.
Phase #2 will rename some stuff (e.g. PAListPtr) and do other less
invasive changes.
llvm-svn: 48289
|
| |
|
|
| |
llvm-svn: 47981
|
| |
|
|
| |
llvm-svn: 47857
|
| |
|
|
| |
llvm-svn: 47825
|
| |
|
|
| |
llvm-svn: 47824
|
| |
|
|
| |
llvm-svn: 47823
|
| |
|
|
|
|
|
|
| |
UnitTests/Vector.
Now they all pass.
llvm-svn: 47820
|
| |
|
|
| |
llvm-svn: 47819
|
| |
|
|
|
|
|
|
|
|
| |
* Simplify handling of byval, making it easier to understand and more
consistent. This fixes PR2065.
* Clean up and simplify handling of GEPs. I can actually understand it now!
* Implement support for GEP'ing into vectors, this fixes
SingleSource/UnitTests/Vector/build2 among others.
llvm-svn: 47818
|
| |
|
|
| |
llvm-svn: 47816
|
| |
|
|
| |
llvm-svn: 47815
|
| |
|
|
| |
llvm-svn: 47812
|
| |
|
|
| |
llvm-svn: 47811
|
| |
|
|
| |
llvm-svn: 47810
|
| |
|
|
| |
llvm-svn: 47809
|
| |
|
|
| |
llvm-svn: 47807
|
| |
|
|
|
|
| |
(PR1126)
llvm-svn: 47806
|
| |
|
|
| |
llvm-svn: 47805
|
| |
|
|
|
|
| |
Use dyn_cast better.
llvm-svn: 47804
|
| |
|
|
| |
llvm-svn: 47725
|
| |
|
|
|
|
|
| |
stuff into ParamAttrsList.h. Per feedback from
ParamAttrs changes.
llvm-svn: 47504
|
| |
|
|
| |
llvm-svn: 47385
|
| |
|
|
| |
llvm-svn: 47369
|
| |
|
|
| |
llvm-svn: 47337
|
| |
|
|
|
|
| |
a noop (which is how it use to be treated). If someone who knows the x86 backend better than me could tell me how to get a lock prefix on an instruction, that would be nice to complete x86 support.
llvm-svn: 47213
|
| |
|
|
| |
llvm-svn: 46646
|
| |
|
|
| |
llvm-svn: 45911
|
| |
|
|
| |
llvm-svn: 45902
|
| |
|
|
| |
llvm-svn: 45891
|
| |
|
|
| |
llvm-svn: 45864
|
| |
|
|
| |
llvm-svn: 45852
|
| |
|
|
|
|
|
|
|
| |
up to the various compiler pipelines.
This doesn't actually add support for any GC algorithms, which means it
temporarily breaks a few tests. To be fixed shortly.
llvm-svn: 45669
|
| |
|
|
| |
llvm-svn: 45418
|
| |
|
|
| |
llvm-svn: 45300
|
| |
|
|
|
|
|
|
|
| |
throw exceptions", just mark intrinsics with the nounwind
attribute. Likewise, mark intrinsics as readnone/readonly
and get rid of special aliasing logic (which didn't use
anything more than this anyway).
llvm-svn: 44544
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
unsigned char *llvm_cbe_X;
...
llvm_cbe_X = 0; *((void**)&llvm_cbe_X) = __builtin_stack_save();
instead of:
llvm_cbe_X = __builtin_stack_save();
See PR1809 for details.
llvm-svn: 44415
|
| |
|
|
|
|
|
|
|
|
|
|
| |
the function type, instead they belong to functions
and function calls. This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll). Hopefully
a bitcode guru (who might that be? :) ) will fix it.
llvm-svn: 44359
|
| |
|
|
| |
llvm-svn: 43094
|
| |
|
|
| |
llvm-svn: 42972
|
| |
|
|
| |
llvm-svn: 42537
|
| |
|
|
|
|
| |
destruction of compiler-created ones.
llvm-svn: 42383
|
| |
|
|
| |
llvm-svn: 42239
|
| |
|
|
|
|
| |
so only works on x86 target).
llvm-svn: 42019
|
| |
|
|
|
|
|
|
| |
GCC optimizes away things like ptr < NULL to false. To "fix" this,
have the CBE emit casts of pointers to intptr_t when doing relational
pointer comparisons.
llvm-svn: 41983
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
double from some of the many places in the optimizers
it appears, and do something reasonable with x86
long double.
Make APInt::dump() public, remove newline, use it to
dump ConstantSDNode's.
Allow APFloats in FoldingSet.
Expand X86 backend handling of long doubles (conversions
to/from int, mostly).
llvm-svn: 41967
|
| |
|
|
|
|
|
| |
Next round of x87 long double stuff.
Getting close now, basically works.
llvm-svn: 41875
|