| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
bytecode reading. This code is crufty, the result of much hacking to get things
working correctly. Cleanup patches will follow.
llvm-svn: 25682
|
| |
|
|
| |
llvm-svn: 25621
|
| |
|
|
| |
llvm-svn: 25605
|
| |
|
|
| |
llvm-svn: 25594
|
| |
|
|
| |
llvm-svn: 25571
|
| |
|
|
| |
llvm-svn: 25564
|
| |
|
|
| |
llvm-svn: 25541
|
| |
|
|
|
|
|
| |
Don't try to be smart about fixing intrinsic functions when they're read
in, just fix them after the module is read when all names are resolved.
llvm-svn: 25539
|
| |
|
|
|
|
|
|
|
| |
boolean flag if we read a function prototype that needs upgrading.
2. Don't upgrade the CallInst instruction until after its been inserted
into the basic block, and only if we know that we have seen an
upgraded intrinsic function.
llvm-svn: 25448
|
| |
|
|
|
|
| |
need to be upgraded.
llvm-svn: 25445
|
| |
|
|
| |
llvm-svn: 25434
|
| |
|
|
| |
llvm-svn: 25404
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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: 25178
|
| |
|
|
| |
llvm-svn: 25022
|
| |
|
|
| |
llvm-svn: 24329
|
| |
|
|
| |
llvm-svn: 24321
|
| |
|
|
| |
llvm-svn: 24223
|
| |
|
|
| |
llvm-svn: 24219
|
| |
|
|
| |
llvm-svn: 24218
|
| |
|
|
| |
llvm-svn: 24216
|
| |
|
|
| |
llvm-svn: 24203
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
lookups instead of linear time lookups. This speeds up bc parsing of a
large file from
137.834u 118.256s 4:27.96
to
132.611u 114.436s 4:08.53
with a release build.
llvm-svn: 23611
|
| |
|
|
| |
llvm-svn: 22838
|
| |
|
|
| |
llvm-svn: 22809
|
| |
|
|
| |
llvm-svn: 22523
|
| |
|
|
|
|
| |
See last commit for LangRef, this implements it on all targets.
llvm-svn: 22273
|
| |
|
|
| |
llvm-svn: 22262
|
| |
|
|
| |
llvm-svn: 22254
|
| |
|
|
|
|
| |
returning to the old style :)
llvm-svn: 22199
|
| |
|
|
| |
llvm-svn: 21752
|
| |
|
|
| |
llvm-svn: 21751
|
| |
|
|
|
|
| |
still to come.
llvm-svn: 21749
|
| |
|
|
| |
llvm-svn: 21727
|
| |
|
|
| |
llvm-svn: 21704
|
| |
|
|
| |
llvm-svn: 21700
|
| |
|
|
| |
llvm-svn: 21417
|
| |
|
|
|
|
|
|
| |
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597
|
| |
|
|
| |
llvm-svn: 20463
|
| |
|
|
| |
llvm-svn: 20297
|
| |
|
|
|
|
|
|
| |
both cases they are looking for non-external variables/functions that do
not have internal linkage. Using "!isExternal()" is a little more
understandable than "hasInitializer()"
llvm-svn: 20155
|
| |
|
|
|
|
|
|
|
| |
Otherwise, clients who call ParseAllFunctionBodies will attempt to parse
the function bodies twice, which is (uh) very very bad (tm).
This fixes gccld on python.
llvm-svn: 20152
|
| |
|
|
|
|
|
|
| |
table for archives in common cases, and prevents trying to resolve a
external reference with an internal reference. This shrinks the libpython.a
symbol table from 126302 to 19770 bytes.
llvm-svn: 20151
|
| |
|
|
|
|
|
| |
LLVM make the very reasonable assumption that constant expressions will
have at least one operand! :)
llvm-svn: 19943
|
| |
|
|
| |
llvm-svn: 19894
|
| |
|
|
|
|
|
| |
Remove unix specific code (use of errno and read) from the reader.
Thanks to Jeff Cohen for pointing this out.
llvm-svn: 19081
|
| |
|
|
| |
llvm-svn: 19067
|
| |
|
|
| |
llvm-svn: 19056
|
| |
|
|
|
|
|
|
| |
Use sys::MappedFile instead of ReadFileIntoAddressSpace and
UnmapFileFromAddressSpace. sys::MappedFile has the nice property that it
cleans up after itself so exception handling can be removed.
llvm-svn: 18902
|