| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Three changes:
1. Convert signed integer types to signless versions.
2. Implement the @sext and @zext parameter attributes. Previously the
type of an function parameter was used to determine whether it should
be sign extended or zero extended before the call. This information is
now communicated via the function type's parameter attributes.
3. The interface to LowerCallTo had to be changed in order to accommodate
the parameter attribute information. Although it would have been
convenient to pass in the FunctionType itself, there isn't always one
present in the caller. Consequently, a signedness indication for the
result type and for each parameter was provided for in the interface
to this method. All implementations were changed to make the adjustment
necessary.
llvm-svn: 32788
|
|
|
|
|
|
|
|
| |
This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.
llvm-svn: 32751
|
|
|
|
| |
llvm-svn: 32731
|
|
|
|
|
|
|
|
| |
creation. These changes are still temporary but at least this pushes
knowledge of signedness out closer to where it can be determined properly
and allows signedness to be removed from VMCore.
llvm-svn: 32654
|
|
|
|
| |
llvm-svn: 32472
|
|
|
|
| |
llvm-svn: 32460
|
|
|
|
|
|
| |
now cerr, cout, and NullStream resp.
llvm-svn: 32298
|
|
|
|
| |
llvm-svn: 31954
|
|
|
|
|
|
|
|
|
|
| |
The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.
llvm-svn: 31931
|
|
|
|
|
|
| |
CBE and interpreter.
llvm-svn: 31755
|
|
|
|
|
|
|
|
| |
This patch converts the old SHR instruction into two instructions,
AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not
dependent on the sign of their operands.
llvm-svn: 31542
|
|
|
|
|
|
|
|
| |
This patch implements the first increment for the Signless Types feature.
All changes pertain to removing the ConstantSInt and ConstantUInt classes
in favor of just using ConstantInt.
llvm-svn: 31063
|
|
|
|
| |
llvm-svn: 26988
|
|
|
|
| |
llvm-svn: 26729
|
|
|
|
| |
llvm-svn: 26659
|
|
|
|
|
|
| |
PR709, and paving the way for future progress.
llvm-svn: 26476
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch is an incremental step towards supporting a flat symbol table.
It de-overloads the intrinsic functions by providing type-specific intrinsics
and arranging for automatically upgrading from the old overloaded name to
the new non-overloaded name. Specifically:
llvm.isunordered -> llvm.isunordered.f32, llvm.isunordered.f64
llvm.sqrt -> llvm.sqrt.f32, llvm.sqrt.f64
llvm.ctpop -> llvm.ctpop.i8, llvm.ctpop.i16, llvm.ctpop.i32, llvm.ctpop.i64
llvm.ctlz -> llvm.ctlz.i8, llvm.ctlz.i16, llvm.ctlz.i32, llvm.ctlz.i64
llvm.cttz -> llvm.cttz.i8, llvm.cttz.i16, llvm.cttz.i32, llvm.cttz.i64
New code should not use the overloaded intrinsic names. Warnings will be
emitted if they are used.
llvm-svn: 25366
|
|
|
|
| |
llvm-svn: 25355
|
|
|
|
|
|
| |
used by the C backend.
llvm-svn: 25267
|
|
|
|
| |
llvm-svn: 24300
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
pointer marking the end of the list, the zero *must* be cast to the pointer
type. An un-cast zero is a 32-bit int, and at least on x86_64, gcc will
not extend the zero to 64 bits, thus allowing the upper 32 bits to be
random junk.
The new END_WITH_NULL macro may be used to annotate a such a function
so that GCC (version 4 or newer) will detect the use of un-casted zero
at compile time.
llvm-svn: 23888
|
|
|
|
| |
llvm-svn: 22523
|
|
|
|
|
|
| |
with the CBE
llvm-svn: 21875
|
|
|
|
| |
llvm-svn: 21874
|
|
|
|
|
|
| |
looks completely untested. :(
llvm-svn: 21873
|
|
|
|
|
|
|
|
| |
'memset'"
warning from the CBE+GCC.
llvm-svn: 21779
|
|
|
|
|
|
|
|
|
| |
population (ctpop). Generic lowering is implemented, however only promotion
is implemented for SelectionDAG at the moment.
More coming soon.
llvm-svn: 21676
|
|
|
|
| |
llvm-svn: 21639
|
|
|
|
| |
llvm-svn: 21629
|
|
|
|
| |
llvm-svn: 21420
|
|
|
|
|
|
| |
backend support.
llvm-svn: 20900
|
|
|
|
|
|
|
|
| |
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597
|
|
|
|
| |
llvm-svn: 20382
|
|
|
|
| |
llvm-svn: 20375
|
|
|
|
| |
llvm-svn: 15334
|
|
|
|
| |
llvm-svn: 14622
|
|
|
|
| |
llvm-svn: 14266
|
|
|
|
| |
llvm-svn: 10623
|
|
llvm-svn: 10621
|