History log of /external/llvm/include/llvm/Function.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
b7454fd9df0b477e3daf2fce6e1d5e1b241562df 12-May-2012 Jay Foad <jay.foad@gmail.com> Teach Function::hasAddressTaken that BlockAddress doesn't really take
the address of a function.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
75c0d8e0d8f4e10587985b950f2c0752e45e099e 09-Mar-2012 Daniel Dunbar <daniel@zuster.org> [Support] Drop verbose _ATTRIBUTE from LLVM_ATTRIBUTE_{READONLY,READNONE} macro
names.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152413 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c66330504c3f433430a28cd7f7f981e555c51bce 20-Oct-2011 Eli Friedman <eli.friedman@gmail.com> Refactor code from inlining and globalopt that checks whether a function definition is unused, and enhance it so it can tell that functions which are only used by a blockaddress are in fact dead. This probably doesn't happen much on most code, but the Linux kernel's _THIS_IP_ can trigger this issue with blockaddress. (GlobalDCE can also handle the given tescase, but we only run that at -O3.) Found while looking at PR11180.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142572 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
3c5e60994f53eef2808a33b5ca6c3dffc2168054 17-Oct-2011 Bill Wendling <isanbard@gmail.com> Correct over-zealous removal of hack.

Some code want to check that *any* call within a function has the 'returns
twice' attribute, not just that the current function has one.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
728662f9e869251ff9b5a847b0cb0daa99d1d250 17-Oct-2011 Bill Wendling <isanbard@gmail.com> Now that we have the ReturnsTwice function attribute, this method is
obsolete. Check the attribute instead.
<rdar://problem/8031714>


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@142212 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
db125cfaf57cc83e7dd7453de2d509bc8efd0e5e 18-Jul-2011 Chris Lattner <sabre@nondot.org> land David Blaikie's patch to de-constify Type, with a few tweaks.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135375 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6c48244973b3c3286af54dddb98412d2820b26b5 14-Jul-2011 Chris Lattner <sabre@nondot.org> consolidate GlobalValue::isDeclaration into one
non-virtual function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@135163 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
1afcace3a3a138b1b18e5c6270caa8dae2261ae2 09-Jul-2011 Chris Lattner <sabre@nondot.org> Land the long talked about "type system rewrite" patch. This
patch brings numerous advantages to LLVM. One way to look at it
is through diffstat:
109 files changed, 3005 insertions(+), 5906 deletions(-)

Removing almost 3K lines of code is a good thing. Other advantages
include:

1. Value::getType() is a simple load that can be CSE'd, not a mutating
union-find operation.
2. Types a uniqued and never move once created, defining away PATypeHolder.
3. Structs can be "named" now, and their name is part of the identity that
uniques them. This means that the compiler doesn't merge them structurally
which makes the IR much less confusing.
4. Now that there is no way to get a cycle in a type graph without a named
struct type, "upreferences" go away.
5. Type refinement is completely gone, which should make LTO much MUCH faster
in some common cases with C++ code.
6. Types are now generally immutable, so we can use "Type *" instead
"const Type *" everywhere.

Downsides of this patch are that it removes some functions from the C API,
so people using those will have to upgrade to (not yet added) new API.
"LLVM 3.0" is the right time to do this.

There are still some cleanups pending after this, this patch is large enough
as-is.




git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
52f6a4de951edf890c3988c92318b13e45fd3b85 25-May-2011 Rafael Espindola <rafael.espindola@gmail.com> Fix some issues Duncan found in the previous commit.

I kept the reference to the ABI since that is the common case. The
-fno-asynchronous-unwind-tables option is a user controlled way of breaking
the ABI.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132053 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
fc2bb8c4448fa884d79e437cc2d2627a7d7740a8 25-May-2011 Rafael Espindola <rafael.espindola@gmail.com> Replace the -unwind-tables option with a per function flag. This is more
LTO friendly as we can now correctly merge files compiled with or without
-fasynchronous-unwind-tables.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@132033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0e00c6c561181be7e9cc75ad2fee9cd4cbbfca1e 16-May-2011 Rafael Espindola <rafael.espindola@gmail.com> Don't do tail calls in a function that call setjmp. The stack might be
corrupted when setjmp returns again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
100c267249d1d03c4f96eede9877a4f9f54f2247 23-Oct-2010 Chandler Carruth <chandlerc@gmail.com> Switch attribute macros to use 'LLVM_' as a prefix. We retain the old names
until other LLVM projects using these are cleaned up.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117200 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c9f7500d1752feac7cece26d20007a99d21f677c 24-Mar-2010 Gabor Greif <ggreif@gmail.com> Finally land the InvokeInst operand reordering.
I have audited all getOperandNo calls now, fixing
hidden assumptions. CallSite related uglyness will
be eliminated successively.

Note this patch has a long and griveous history,
for all the back-and-forths have a look at
CallSite.h's log.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99399 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
f38a33cd0aafff87a8f48debccb09971d2b82dd9 21-Jan-2010 Jim Grosbach <grosbach@apple.com> back this out for now. Growing Function is not good.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94097 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d0a0c382ea51d36dc7e5938291763da73b4262dc 21-Jan-2010 Jim Grosbach <grosbach@apple.com> Make sure that landing pad entries in the EH call site table are in the proper
order for SjLj style exception handling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94055 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
cafe9bba32aeed16e8e3db28b4cd4ff13160438f 29-Dec-2009 Chris Lattner <sabre@nondot.org> add a layer of accessors around the Value::SubClassData member, and use
a convention (shadowing the setter with private forwarding function) to
prevent subclasses from accidentally using it.

This exposed some bogosity in ConstantExprs, which was propaging the
opcode of the constant expr into the NUW/NSW/Exact field in the
getWithOperands/getWithOperandReplaced methods.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92239 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5415127330d3b3ccb91cc6fef196f066563740a9 15-Nov-2009 Chris Lattner <sabre@nondot.org> mark getIntrinsicID() 'readonly'. This allows various classof methods
(like DbgDeclareInst's) to shrink substantially. It sucks that we have
to pull Compiler.h into such a public header, but at least Compiler.h
doesn't pull anything else in.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88863 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
65c3c8f323198b99b88b109654194540cf9b3fa5 02-Sep-2009 Sandeep Patel <deeppatel1987@gmail.com> Retype from unsigned to CallingConv::ID accordingly. Approved by Bob Wilson.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80773 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
7309be6735666143bd9835b275dc8501617a2591 26-Aug-2009 Gabor Greif <ggreif@gmail.com> Remove all the LLVM_COMPACTIFY_SENTINELS-related macro magic as discussed with Chris on IRC. Anybody wanting to debug sentinel dereferencing problems must revert this patch and perform the indicated modifications.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80128 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
2600ca8b3f3602d0904289eeed3d26f3d7aad2ae 25-Aug-2009 Gabor Greif <ggreif@gmail.com> re-committing yesterday's r79938.

This time there is no additional include of llvm/Config/config.h
at all. Instead I use a hard-coded preprecessor symbol:
LLVM_COMPACTIFY_SENTINELS

(should this work on the self-hosting buildbot, then
cleanups come next)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80035 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
f63097f223459a2f1125ab68afd61b364eda9312 25-Aug-2009 Bill Wendling <isanbard@gmail.com> --- Reverse-merging r79938 into '.':
U include/llvm/BasicBlock.h
U include/llvm/ADT/ilist_node.h
U include/llvm/ADT/ilist.h
U include/llvm/CodeGen/SelectionDAG.h
U include/llvm/CodeGen/MachineFunction.h
U include/llvm/CodeGen/MachineBasicBlock.h
U include/llvm/Function.h

Revert r79938. It was causing self-hosting build failures.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
fd7a918e5890a6c0611ab6b3fca7001d16593844 24-Aug-2009 Gabor Greif <ggreif@gmail.com> Resubmit an earlier patch of mine:
reduce the size of relevant "ghostly" sentinels
by a pointer.

This attempt now makes the compactification dependent
on the configure variable LLVM_COMPACT_SENTINELS
and should not cause any bootstrap failures for
llvm-gcc any more.

Please note that this is not yet the final version,
and (as settled with Chris) I shall take out the
autofoo/cmake portions in the next days.

This will also lose the assertability on sentinel
dereferencing and operator++, but that seems
an acceptable price to pay for the simplified
build logic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79938 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
12ddd409535b52a7fa5157ded9a4cedd161fedb6 11-Aug-2009 Benjamin Kramer <benny.kra@googlemail.com> Make LLVMContext and LLVMContextImpl classes instead of structs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78690 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
48b2f3e4850cd27d54224cd42da8a160d6b95984 05-Aug-2009 Owen Anderson <resistor@mac.com> Factor some of the constants+context related code out into a separate header, to make LLVMContextImpl.h
not hideous. Also, fix some MSVC compile errors.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78115 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
ad2afc2a421a0e41603d5eee412d4d8c77e9bc1c 31-Jul-2009 Dan Gohman <gohman@apple.com> Reapply r77654 with a fix: MachineFunctionPass's getAnalysisUsage
shouldn't do AU.setPreservesCFG(), because even though CodeGen passes
don't modify the LLVM IR CFG, they may modify the MachineFunction CFG,
and passes like MachineLoop are registered with isCFGOnly set to true.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77691 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c5b19b21d84814d19692a6bbea11fbd135f4b094 31-Jul-2009 Daniel Dunbar <daniel@zuster.org> Revert r77654, it appears to be causing llvm-gcc bootstrap failures, and many
failures when building assorted projects with clang.

--- Reverse-merging r77654 into '.':
U include/llvm/CodeGen/Passes.h
U include/llvm/CodeGen/MachineFunctionPass.h
U include/llvm/CodeGen/MachineFunction.h
U include/llvm/CodeGen/LazyLiveness.h
U include/llvm/CodeGen/SelectionDAGISel.h
D include/llvm/CodeGen/MachineFunctionAnalysis.h
U include/llvm/Function.h
U lib/Target/CellSPU/SPUISelDAGToDAG.cpp
U lib/Target/PowerPC/PPCISelDAGToDAG.cpp
U lib/CodeGen/LLVMTargetMachine.cpp
U lib/CodeGen/MachineVerifier.cpp
U lib/CodeGen/MachineFunction.cpp
U lib/CodeGen/PrologEpilogInserter.cpp
U lib/CodeGen/MachineLoopInfo.cpp
U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
D lib/CodeGen/MachineFunctionAnalysis.cpp
D lib/CodeGen/MachineFunctionPass.cpp
U lib/CodeGen/LiveVariables.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77661 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
933c762371fe8cc6e2ef5d00d6866f4924852fed 31-Jul-2009 Dan Gohman <gohman@apple.com> Manage MachineFunctions with an analysis Pass instead of the Annotable
mechanism. To support this, make MachineFunctionPass a little more
complete.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77654 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6e0d1cb30957a636c53158d3089e6fb88348a57a 25-Jul-2009 Daniel Dunbar <daniel@zuster.org> Initial update to VMCore to use Twines for string arguments.
- The only meat here is in Value.{h,cpp} the rest is essential 'const
std::string &' -> 'const Twine &'.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77048 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
e922c0201916e0b980ab3cfe91e1413e68d55647 22-Jul-2009 Owen Anderson <resistor@mac.com> Get rid of the Pass+Context magic.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
07cf79ef537caff6d39145f190a28a336e629b6f 07-Jul-2009 Owen Anderson <resistor@mac.com> "LLVMContext* " --> "LLVMContext *"


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0a205a459884ec745df1c529396dd921f029dafd 06-Jul-2009 Owen Anderson <resistor@mac.com> More LLVMContext-ification.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74807 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
62fabf5faba70c507c8fbe298260e9b3749fdd79 02-Jul-2009 Owen Anderson <resistor@mac.com> Add an accessor to Function so that Passes can easily get access to the context.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
757068f3bad425fb126fe16ab7b8a82a636e6bbd 10-Jun-2009 Jay Foad <jay.foad@gmail.com> Implement and use new method Function::hasAddressTaken().

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@73164 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
9c01f2dd0b20e09f4edef832620a188eda62ff5a 27-Mar-2009 Dan Gohman <gohman@apple.com> Revert r67844. This fixes the llvm-gcc-4.2 build on Darwin.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67856 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
76d38384542e2f596e14eb8e80b8e1c6a2652fd1 27-Mar-2009 Duncan Sands <baldrick@free.fr> Reapply r66415, which was reverted in r66426 for
causing a bootstrap failure. Bootstraps here on
x86-32-linux and x86-64-linux. Requested by the
author Gabor Greif who says that a bug that might
have been causing the failure has since been fixed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67844 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
9aaa0796adff54dd6282e8ead6d3d9f2ab7eea22 09-Mar-2009 Bill Wendling <isanbard@gmail.com> Revert r66415. It's causing failures during bootstrap builds:

Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c: In function '__muldi3':
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c:567: internal compiler error: Bus error
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c: In function '__lshrdi3':
/Volumes/Sandbox/Buildbot/llvm/full-llvm/build/llvmgcc42.roots/llvmgcc42~obj/src/gcc/libgcc2.c:421: internal compiler error: Bus error
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://developer.apple.com/bugreporter> for instructions.
make[5]: *** [libgcc/./_lshrdi3.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[5]: *** [libgcc/./_muldi3.o] Error 1
make[5]: *** [libgcc/./_negdi2.o] Error 1


--- Reverse-merging (from foreign repository) r66415 into '.':
U include/llvm/BasicBlock.h
U include/llvm/ADT/ilist_node.h
U include/llvm/CodeGen/SelectionDAG.h
U include/llvm/CodeGen/MachineFunction.h
U include/llvm/CodeGen/MachineBasicBlock.h
U include/llvm/Function.h



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66426 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5c3e7b171898612066afc86b8fa850cc32a0cd40 09-Mar-2009 Gabor Greif <ggreif@gmail.com> in builds without asserts we do not need to allocate the Next pointer in "ghostly" sentinels

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66415 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
7afd3e1599222dc691cca9e601800878c8546663 07-Mar-2009 Gabor Greif <ggreif@gmail.com> further simplifications arising from peruse of the more declarative interface

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66333 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
b547a181005cc255fa57c61c1c0dbafca5375fb4 07-Mar-2009 Gabor Greif <ggreif@gmail.com> Remove the burden of dealing with list offsets
from SymbolTableListTraits' clients, and
intead request a nice declarative interface.
Cleans up an IMHO ugly wart.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66331 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
f3841fcbd587c31aa9842b3f33bd57de40c9f443 04-Mar-2009 Gabor Greif <ggreif@gmail.com> ooops, forgot to include the pointless-write eliminator in my previous checkin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66081 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c23b8719ef9d6b1220e854b37d40e9e1c48a82bc 04-Mar-2009 Gabor Greif <ggreif@gmail.com> Give sentinel traits the right to determine the policy where the sentinel is kept.
This should result in less indirect memory accesses, less dead writes and tighter code.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66061 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
1012919ed8b3e2cd4b421c104ce9d8f4e20ced9d 02-Mar-2009 Gabor Greif <ggreif@gmail.com> Declare Sentinel fragments as mutable to get rid
of some pointless casting. This fragment logically
does not belong to ilist anyway, but to "ghostly"
NodeType.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5e7d4d643d691f6169eaaf60b13dc54ba2b69232 01-Mar-2009 Gabor Greif <ggreif@gmail.com> Another sentinel optimization. This one should always
be a win, since almost every interesting function has at least one Argument.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65778 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
abd6f28a74e74303725ec123bdfe9202617115c8 01-Mar-2009 Gabor Greif <ggreif@gmail.com> Reuse a technique (pioneered for BasicBlocks) of superposing ilist with
its sentinel. This is quite a win when a function really has a basic block.
When the function is just a declaration (and stays so) the old way did not
allocate a sentinel. So this change is most beneficial when the ratio of
function definition to declaration is high. I.e. linkers etc. Incidentally
these are the most resource demanding applications, so I expect that the
reduced malloc traffic, locality and space savings outweigh the cost of
addition of two pointers to Function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65776 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
1f3bd7a2ee3e866d7196aca10d334777bb99f677 01-Mar-2009 Gabor Greif <ggreif@gmail.com> fix a comment

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65768 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
49de98214b82fefeb8f16efbf8cdd8813a85469b 05-Feb-2009 Dale Johannesen <dalej@apple.com> Reapply 63765. Patches for clang and llvm-gcc to follow.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63812 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4d452de1506344bf1d28bb4a8c4ddb78c51a28c8 04-Feb-2009 Dale Johannesen <dalej@apple.com> Reverting 63765. This broke the build of both clang
and llvm-gcc.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d24479730a8790d82c4859dc477bc2416d7a6bda 04-Feb-2009 Nate Begeman <natebegeman@mac.com> New feature: add support for target intrinsics being defined in the
target directories themselves. This also means that VMCore no longer
needs to know about every target's list of intrinsics. Future work
will include converting the PowerPC target to this interface as an
example implementation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63765 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
30b64129f5bf03521665115023c9a360a4e67218 04-Jan-2009 Nick Lewycky <nicholas@mxc.ca> Add utility functions for marking parameters as noalias or nocapture.

Clean up some of the existing code by making it use hasFnAttr/addFnAttr
and round it off by creating removeFnAttr.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61627 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
bde84d2fca4217043eb8c2ba447ae2797813ca54 08-Oct-2008 Eric Christopher <echristo@apple.com> Fix disagreement about where the attributes are
~0 != ~0U.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57268 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
e940f3e6bbce1575d137df97f26e4df00a3877b7 04-Oct-2008 Chris Lattner <sabre@nondot.org> comment cleanups



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57058 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c580144f41393217f928a0f8a99ff2cb066d460a 29-Sep-2008 Devang Patel <dpatel@apple.com> Fix grammer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56795 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
2c9c3e73682749016d5885b67ff719f634b37d58 27-Sep-2008 Devang Patel <dpatel@apple.com> Implement function notes as function attributes.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56716 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
19c874638d9478a5d5028854817a5ee72293bb2b 27-Sep-2008 Devang Patel <dpatel@apple.com> Now Attributes are divided in three groups
- return attributes - inreg, zext and sext
- parameter attributes
- function attributes - nounwind, readonly, readnone, noreturn

Return attributes use 0 as the index.
Function attributes use ~0U as the index.

This patch requires corresponding changes in llvm-gcc and clang.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56704 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0598866c052147c31b808391f58434ce3dbfb838 25-Sep-2008 Devang Patel <dpatel@apple.com> Large mechanical patch.

s/ParamAttr/Attribute/g
s/PAList/AttrList/g
s/FnAttributeWithIndex/AttributeWithIndex/g
s/FnAttr/Attribute/g

This sets the stage
- to implement function notes as function attributes and
- to distinguish between function attributes and return value attributes.

This requires corresponding changes in llvm-gcc and clang.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56622 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
dd4924c564c7a661b78b604ebf16dfef7aa62b35 24-Sep-2008 Devang Patel <dpatel@apple.com> Move FN_NOTE_AlwaysInline and other out of ParamAttrs namespace.
Do not check isDeclaration() in hasNote(). It is clients' responsibility.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56524 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
b700c3f36753c09acfd4afe3378aacfc23963017 24-Sep-2008 Devang Patel <dpatel@apple.com> Remove tabs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56515 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
eaf42abab6d465c38891345d999255871cf03943 24-Sep-2008 Devang Patel <dpatel@apple.com> s/ParameterAttributes/Attributes/g



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d9b4a5f859188cbb168c223071b413e58c53c925 24-Sep-2008 Devang Patel <dpatel@apple.com> Use parameter attribute store (soon to be renamed) for
Function Notes also. Function notes are stored at index ~0.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56511 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
f3ba70861ccf00b1072ae1b6ade3ebe2da6cff40 23-Sep-2008 Devang Patel <dpatel@apple.com> Add hasNote() to check note associated with a function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56477 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
cb7f483d8c1e0ee48969e13aa3929dd172c97eff 03-Sep-2008 Devang Patel <dpatel@apple.com> s/FP_AlwaysInline/FN_NOTE_AlwaysInline/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
21dbb99964f0568d2d3d3fc7e2bd5967e7577bd1 02-Sep-2008 Devang Patel <dpatel@apple.com> Getter and setter for function notes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55638 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
71c8c175fb2a477b90efe745aaf48ed9265300a9 29-Aug-2008 Daniel Dunbar <daniel@zuster.org> Add GlobalValue::{removeFromParent,eraseFromParent}


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55529 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
944fac71e082cc2664cc71b4d3f6c72bab7143fb 24-Aug-2008 Chris Lattner <sabre@nondot.org> Switch the asmprinter (.ll) and all the stuff it requires over to
use raw_ostream instead of std::ostream. Among other goodness,
this speeds up llvm-dis of kc++ with a release build from 0.85s
to 0.49s (88% faster).

Other interesting changes:
1) This makes Value::print be non-virtual.
2) AP[S]Int and ConstantRange can no longer print to ostream directly,
use raw_ostream instead.
3) This fixes a bug in raw_os_ostream where it didn't flush itself
when destroyed.
4) This adds a new SDNode::print method, instead of only allowing "dump".


A lot of APIs have both std::ostream and raw_ostream versions, it would
be useful to go through and systematically anihilate the std::ostream
versions.

This passes dejagnu, but there may be minor fallout, plz let me know if
so and I'll fix it.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55263 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5eca075b74d62c621b160aa216b4cd50829a2cc7 17-Aug-2008 Gordon Henriksen <gordonhenriksen@mac.com> Rename some GC classes so that their roll will hopefully be clearer.

In particular, Collector was confusing to implementors. Several
thought that this compile-time class was the place to implement
their runtime GC heap. Of course, it doesn't even exist at runtime.
Specifically, the renames are:

Collector -> GCStrategy
CollectorMetadata -> GCFunctionInfo
CollectorModuleMetadata -> GCModuleInfo
CollectorRegistry -> GCRegistry
Function::getCollector -> getGC (setGC, hasGC, clearGC)

Several accessors and nested types have also been renamed to be
consistent. These changes should be obvious.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54899 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
fed90b6d097d50881afb45e4d79f430db66dd741 28-Jul-2008 Dan Gohman <gohman@apple.com> Fold the useful features of alist and alist_node into ilist, and
a new ilist_node class, and remove them. Unlike alist_node,
ilist_node doesn't attempt to manage storage itself, so it avoids
the associated problems, including being opaque in gdb.

Adjust the Recycler class so that it doesn't depend on alist_node.
Also, change it to use explicit Size and Align parameters, allowing
it to work when the largest-sized node doesn't have the greatest
alignment requirement.

Change MachineInstr's MachineMemOperand list from a pool-backed
alist to a std::list for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54146 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
98fd7f6b2f109e16abf3e4279c971f8d3703b8a6 11-Jul-2008 Bill Wendling <isanbard@gmail.com> Pull r53428 from Gaz into mainline:

Remove warnings about unused/shadowed variables.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
cfa3c236b23aff80e48df11ef5833b7e63fab802 08-Jul-2008 Duncan Sands <baldrick@free.fr> Add some helpers for manipulating function
parameter attributes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@53228 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
28c3cff8250b3fe2adc6479306fe7dbdb48a1bdb 26-May-2008 Duncan Sands <baldrick@free.fr> Factor code to copy global value attributes like
the section or the visibility from one global
value to another: copyAttributesFrom. This is
particularly useful for duplicating functions:
previously this was done by explicitly copying
each attribute in turn at each place where a
new function was created out of an old one, with
the result that obscure attributes were regularly
forgotten (like the collector or the section).
Hopefully now everything is uniform and nothing
is forgotten.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51567 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0bf7b414ae0bb6699cadc3a210d18cfec44e9354 16-May-2008 Eric Christopher <echristo@apple.com> Add functions to enable adding a single attribute to a function and
its associated call site.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51204 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
92432a8db1266f7932bce13a7e6354b0993838d3 08-Apr-2008 Duncan Sands <baldrick@free.fr> Convenience method for setting the nounwind
attribute for a function.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
051a950000e21935165db56695e35bade668193b 06-Apr-2008 Gabor Greif <ggreif@gmail.com> API changes for class Use size reduction, wave 1.
Specifically, introduction of XXX::Create methods
for Users that have a potentially variable number of
Uses.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49277 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d5d94df73f2af639a4cffc7e4f3491001817df08 13-Mar-2008 Chris Lattner <sabre@nondot.org> move a bunch of trivial methods to be inline.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48326 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
041221c0972ff575b07f76808c504833d629ae1f 13-Mar-2008 Chris Lattner <sabre@nondot.org> Various improvements suggested by Duncan


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48325 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
58d74910c6b82e622ecbb57d6644d48fec5a5c0f 12-Mar-2008 Chris Lattner <sabre@nondot.org> Reimplement the parameter attributes support, phase #1. hilights:

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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
41e2397b720bc5d917ef614a7a6c257e8a3c8e42 03-Mar-2008 Devang Patel <dpatel@apple.com> s/isReturnStruct()/hasStructRetAttr()/g


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47857 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
08e78b18b8ef2c939ee95469662c98e23846d860 22-Feb-2008 Dale Johannesen <dalej@apple.com> Pass alignment on ByVal parameters, from FE, all
the way through. It is now used for codegen.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47484 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0d51e7ec0d2dcbea9e304fd58deb05f37eb75635 19-Feb-2008 Dale Johannesen <dalej@apple.com> Expand ParameterAttributes to 32 bits (in preparation
for adding alignment info, not there yet). Clean up
interfaces to reference ParameterAttributes consistently.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47342 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
49269d9e7eb5ce6e1a84a10ca0bdeab044d0db3d 03-Jan-2008 Chris Lattner <sabre@nondot.org> Disallow copying explicitly.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45518 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
50ee9ddc8f0633af6cb0a5693a2c706e98f944da 03-Jan-2008 Chris Lattner <sabre@nondot.org> Split param attr implementation out from Function.cpp into its
own file. Don't #include ParameterAttributes.h into any major
public header files: just move methods out of line as appropriate.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45517 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
7ed47a13356daed2a34cd2209a31f92552e3bdd8 29-Dec-2007 Chris Lattner <sabre@nondot.org> Don't attribute in file headers anymore. See llvmdev for the
discussion of this change. Boy are my fingers tired. ;-)



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45411 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
2b0e8990ab33ec2dad21286d3ce01dbb4bbe63c1 18-Dec-2007 Duncan Sands <baldrick@free.fr> Rename isNoReturn to doesNotReturn, and isNoUnwind to
doesNotThrow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45160 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
cbb8badce8838ece47cb806a0399c77d76a7e11b 10-Dec-2007 Duncan Sands <baldrick@free.fr> Make PruneEH update the nounwind/noreturn attributes
on functions as it calculates them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
80a75bfae980df96f969f1c05b0c4a80ce975240 10-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Adding a collector name attribute to Function in the IR. These
methods are new to Function:

bool hasCollector() const;
const std::string &getCollector() const;
void setCollector(const std::string &);
void clearCollector();

The assembly representation is as such:

define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to
collector names, such that there is no overhead. A StringPool is
further used to unique collector names, which are extremely
likely to be unique per process.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44769 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
afba8fe662d65b25b4baf46bb26cc18e1f9cc0a5 10-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Reverting dtor devirtualization patch.
_sabre_: it has a major problem: by the time ~Value is run, all of the "parts" of the derived classes have been destroyed
_sabre_: the vtable lives to fight another day

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44760 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
ed455c8fa25dd37a13b33f0afa66be03ac49b5bb 09-Dec-2007 Gordon Henriksen <gordonhenriksen@mac.com> Devirtualizing Value destructor (PR889). Patch by Pawel Kunio!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44747 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
a3355ffb3d30d19d226bbb75707991c60f236e37 03-Dec-2007 Duncan Sands <baldrick@free.fr> Rather than having special rules like "intrinsics cannot
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).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44544 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
afa3b6da11bc05281bcf09e45de9e037e0ee5011 28-Nov-2007 Duncan Sands <baldrick@free.fr> Add some convenience methods for querying attributes, and
use them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44403 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
dc024674ff96820d6020757b48d47f46d4c07db2 27-Nov-2007 Duncan Sands <baldrick@free.fr> Fix PR1146: parameter attributes are longer part of
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
9cf8e5d092a0ef1c04d9630e537bb1357393ffb1 20-Aug-2007 Chris Lattner <sabre@nondot.org> clarify precedence, no functionality change.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41199 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0162c1815e5a1b33750d313c49f707bc446ea946 18-Aug-2007 Chris Lattner <sabre@nondot.org> Compute the argument list as lazily as possible. This ensures that clients
that don't use it don't have to pay the memory cost for the arguments. This
allows us to avoid creating Argument nodes for many prototypes and for clients
who lazily deserialize code from a bytecode file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41166 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c6c98af9e5814e8066c82f20ca11cf646a5fc289 29-Apr-2007 Anton Korobeynikov <asl@math.spbu.ru> Implement review feedback


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36564 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
a80e1181b78183dc36ec6568559d38faa86981f0 28-Apr-2007 Anton Korobeynikov <asl@math.spbu.ru> Implement review feedback. Aliasees can be either GlobalValue's or
bitcasts of them.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36537 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
8b0a8c84da2030ee8f4440d5b60a8033de691222 25-Apr-2007 Anton Korobeynikov <asl@math.spbu.ru> Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part
will follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36435 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
b90909e40536db17665727f5ca1c618e485464c3 22-Apr-2007 Reid Spencer <rspencer@reidspencer.com> For PR1136:
Add reference counting to ParamAttrsList and make use of it in Function,
CallInst and InvokeInst classes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36346 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4cc12c9f5799039b59cceaae2be628f4db82c383 17-Apr-2007 Chris Lattner <sabre@nondot.org> make getnext/getprev accessors private.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
eb913b6b34a81b95ea5f692b710e5766526853c6 17-Apr-2007 Jeff Cohen <jeffc@jolt-lang.org> Fix build breakage on 64-bit systems.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
18feb92e917a029b72a338e91b5b93f74d26f406 17-Apr-2007 Chris Lattner <sabre@nondot.org> merge several fields in GlobalValue to use the same word, move CallingConv
field into SubclassData in Value. This shrinks GlobalVAlue from 48->40
bytes, Function from 88->76, and GlobalVariable from 76->68. This trims
4640 bytes off my testcase, reading a bc file without materializing any
functions.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
f8dfef74376dd85f37601855f7519d8256700dab 17-Apr-2007 Chris Lattner <sabre@nondot.org> The (negative) offset from a SymbolTableListTraits-using ilist to its container
object is always constant. As such, evaluate it at compile time instead of storing
it as an ivar in SymbolTableListTraits. This shrinks every SymbolTableListTraits
ilist by a word, shrinking BasicBlock from 44->40 bytes, Function from 96->88 bytes,
and Module from 60->52 bytes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36189 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
17fcdd5e1b78b829068ca657c97357a39d6e768b 17-Apr-2007 Chris Lattner <sabre@nondot.org> Refactor SymbolTableListTraits to only have a single pointer in it, instead
of two. This shrinkifies Function by 8 bytes (104->96) and Module by 8
bytes (68->60). On a testcase of mine, this reduces the memory used to
read a module header from 565680b to 561024, a little over 4K.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36188 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
2db15e2b4271d09ebc33516566ba852b8567810b 16-Apr-2007 Reid Spencer <rspencer@reidspencer.com> For PR1328:
Don't assert everytime an intrinsic name isn't recognized. Instead, make
the assert optional when callin getIntrinsicID(). This allows the assembler
to handle invalid intrinsic names gracefully.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36120 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
a1a702cdd23221e6e3f36632be91150138958e9d 13-Apr-2007 Dan Gohman <gohman@apple.com> Rename Value::getValueType to getValueID, to avoid confusion with
other things named getValueType.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35964 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4746ecf16eeb5ff920672fdff1c0dd85594437ed 09-Apr-2007 Reid Spencer <rspencer@reidspencer.com> For PR1146:
* Add ParamAttrList pointers to Function and CallInst.
* Move the implementation of ParamAttrList from Type.cpp to Function.cpp


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35818 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
ef9b9a793949469cdaa4ab6d0173136229dcab7b 05-Feb-2007 Reid Spencer <rspencer@reidspencer.com> For PR411:
This patch replaces the SymbolTable class with ValueSymbolTable which does
not support types planes. This means that all symbol names in LLVM must now
be unique. The patch addresses the necessary changes to deal with this and
removes code no longer needed as a result. This completes the bulk of the
changes for this PR. Some cleanup patches will follow.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33918 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5cbf985dcbc89fba3208e7baf8b6f488b06d3ec9 30-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid
confusion with external linkage types.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33663 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0fc052c36f162852fd7c02acba73da0a2fce43fb 26-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR645:
Remove the Function::renameLocalSymbols function as it is no longer
needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33522 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
78d033e086e19e016273de014f9214aa6f3f844b 06-Jan-2007 Reid Spencer <rspencer@reidspencer.com> For PR411:
Take an incremental step towards type plane elimination. This change
separates types from values in the symbol tables by finally making use
of the TypeSymbolTable class. This yields more natural interfaces for
dealing with types and unclutters the SymbolTable class.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32956 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5c7e326585f3a543388ba871c3425f7664cd9143 17-Dec-2006 Bill Wendling <isanbard@gmail.com> Added an automatic cast to "std::ostream*" etc. from OStream. We then can
rework the hacks that had us passing OStream in. We pass in std::ostream*
instead, check for null, and then dispatch to the correct print() method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32636 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
304a564c1f84eaaee8dc218a2eb57443c370e12f 25-Oct-2005 Chris Lattner <sabre@nondot.org> Add a missing Module::setTargetTriple method.

Remove Function::aiterator and Module::giterator typedefs (and const versions)
as they should have been removed when abegin/gbegin were removed. Thanks to
alkis for bringing this to my attn.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
1a4dff011844d2b6daca8fc9dad6964191824dd7 16-May-2005 Chris Lattner <sabre@nondot.org> remove deprecated methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22076 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
3340ffe85431f705e91aa4d4b64207f80d0d8c2f 06-May-2005 Chris Lattner <sabre@nondot.org> Add support for explicit calling conventions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21745 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
9769ab22265b313171d201b5928688524a01bd87 21-Apr-2005 Misha Brukman <brukman+llvm@gmail.com> Remove trailing whitespace


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6ca71751afadc68815906912faaa0abbe2192654 15-Mar-2005 Chris Lattner <sabre@nondot.org> remove a whole bunch of dead methods. Noone should use reverse iterators anyway.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20600 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
2427c9dfb3d76f7c71fcc7e9291464d8e6eb1cc2 15-Mar-2005 Chris Lattner <sabre@nondot.org> Remove the reverse iterators for arguments and global vars.
Rename argument iterators arg_* instead of a*
Remove global variable iterators global_* instead of g*.

Keep the old names for temporary compatibility.

Patch contributed by Gabor Greif!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20591 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0d1e40728d668085257b78657b381e1f13d77d52 05-Mar-2005 Chris Lattner <sabre@nondot.org> remove all of the various setName implementations, consolidating them into
Value::setName, which is no longer virtual.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d0478744b3b5232694d0f887b3210078de5266c4 05-Mar-2005 Chris Lattner <sabre@nondot.org> Remove the second argument to Value::setName, it is never needed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20457 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
bca81448ac8e19c588c9a4ad16fc70732b76327c 30-Jan-2005 Chris Lattner <sabre@nondot.org> Improve conformance with the Misha spelling benchmark suite


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19930 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
38653f0ac83b793142cd0f3000ba5b1667b08a80 29-Jan-2005 Chris Lattner <sabre@nondot.org> Adjust to changes in ilist


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19922 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
fe59d36c4510b9b3df6deab2fe269ef19db4d193 07-Jan-2005 Chris Lattner <sabre@nondot.org> Add convenience method.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19321 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
caa4ae7c3fcbb69081eb1556d2c5fbaa21202b39 05-Dec-2004 Chris Lattner <sabre@nondot.org> Add a new method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@18531 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c063502e326fe0206942192773b263a3d88d93f5 15-Nov-2004 Chris Lattner <sabre@nondot.org> Warning fixes for VC++, contributed by Morten Ofstad!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17831 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
7e302d2f5f6c9b53d0c5017ac3325420b1c8e3d9 19-Oct-2004 Misha Brukman <brukman+llvm@gmail.com> If we're going to make the braces of functions line up for ease of readability
and aesthetic reasons, might as well finish the job


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17140 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
b92f50fe6091a7a12f54f9884529b1127b1a14e5 12-Oct-2004 Chris Lattner <sabre@nondot.org> Add long overdue methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16921 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
551ccae044b0ff658fe629dd67edd5ffe75d10e8 02-Sep-2004 Reid Spencer <rspencer@reidspencer.com> Changes For Bug 352
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
58ae9c7290ff7a639a55784f2362f1e52626c2ee 01-Mar-2004 Misha Brukman <brukman+llvm@gmail.com> Fix grammar and doxygenify comments.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12054 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c230978a82adff3ab9d6ae0426a942e431ce9c5e 26-Feb-2004 Chris Lattner <sabre@nondot.org> Annotations are evil. This makes Value not derive from Annotable, which makes
all dynamically allocated LLVM values 4 bytes smaller, eliminate some vtables, and
make Value's destructor faster.

This makes Function derive from Annotation now because it is the only core LLVM
class that still has an annotation stuck onto it: MachineFunction.
MachineFunction is obviously horrible and gross (like most other annotations), but
will be the subject of refactorings later in the future. Besides many fewer
Function objects are dynamically allocated that instructions blocks, constants,
types, etc... :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11878 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d0fde30ce850b78371fd1386338350591f9ff494 11-Nov-2003 Brian Gaeke <gaeke@uiuc.edu> Put all LLVM code into the llvm namespace, as per bug 109.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
072ddb1dac5afbf5c789a4ea7c7a2a4205508011 31-Oct-2003 Chris Lattner <sabre@nondot.org> Expose new print methods


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9620 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c149c47d1f98afe504ad69c3456a4de6803015ef 22-Oct-2003 Chris Lattner <sabre@nondot.org> Add two new function stubs for viewing the CFG of a function inside of the
debugger


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9373 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6fbcc26f1460eaee4e0eb8b426fc1ff0c7af11be 20-Oct-2003 John Criswell <criswell@uiuc.edu> Added LLVM copyright header (for lack of a better term).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
894707117e718b38cdd5fbbf7b2d2ccfcbafe98b 20-Sep-2003 Chris Lattner <sabre@nondot.org> Rename getEntryNode -> getEntryBlock()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8624 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0c448e58d346201d91767ee27423931101132c9d 17-Sep-2003 Chris Lattner <sabre@nondot.org> Add new deleteBody method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@8571 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
fbe3ecdb2cabae81525db3ad8d2d88d584b73fb2 10-May-2003 Chris Lattner <sabre@nondot.org> Update out of date comment


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4804824047a7a3b87022541eb143063fffad7ddc 08-May-2003 Chris Lattner <sabre@nondot.org> Initial support for intrinsic functions


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4ad02e726d9b634372b037d4b352d8b63bb9e849 16-Apr-2003 Chris Lattner <sabre@nondot.org> Add new linkage types to support a real frontend


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5786 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6e6026b46569b01f8f6d4dcdb6c899c3a9c76b3e 20-Nov-2002 Chris Lattner <sabre@nondot.org> - Eliminated the deferred symbol table stuff in Module & Function, it really
wasn't an optimization and it was causing lots of bugs.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4779 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
2c08dcc276e218193beffbddf2a30f4d88e8af58 20-Nov-2002 Chris Lattner <sabre@nondot.org> Eliminate the concept of a deferred symbol table. The optimization really isn't,
and it causes obscure bugs to show up in passes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4777 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0dad6e9c95984804953db0fdcbe0c907d9ee351e 15-Oct-2002 Chris Lattner <sabre@nondot.org> - Eliminate SymbolTable::ParentSymTab, ST::localLookup, and
Function::ParentSymTab. These aren't needed at all.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4186 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4bbd839d10b14cd9028896800faa892e9d8ce3a3 10-Oct-2002 Chris Lattner <sabre@nondot.org> Make isExtern() be a virtual function inherited from GlobalValue


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4101 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
fab8c796f6754962f5732145248303e3a1f7b96b 06-Sep-2002 Chris Lattner <sabre@nondot.org> * Clean up some comments
* Move code out of header file to .cpp files, to make future changes easier
* Add arguments to classes so that they can be automatically inserted into their
parent structure upon creation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3604 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
a42414bcf6c04da34da107dd20c88f6f1965ad40 06-Sep-2002 Chris Lattner <sabre@nondot.org> * Clean up indentation a bit
* Fix broken comments (copy and pasto)
* Remove irrelevant comment
* Add extra argument to function that causes it to get inserted into a module
automatically.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3601 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
26199059268a05739c84ebf465fcdbf7ded861df 26-Aug-2002 Chris Lattner <sabre@nondot.org> Convert comments to Doxygen style


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3507 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
18961504fc2b299578dba817900a0696cf3ccc4d 25-Jun-2002 Chris Lattner <sabre@nondot.org> *** empty log message ***


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2777 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
8c310c75489a94c6e02b779ae0f611dfd3d63619 28-Apr-2002 Chris Lattner <sabre@nondot.org> * Incorporate the functionality of SymTabValue into Function
* s/Method/Function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2343 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
e06e9146eeb48e3ebf0f30bdaf7d86a6e03946ad 09-Apr-2002 Chris Lattner <sabre@nondot.org> Move FunctionArgument out of iOther.h into Argument.h and rename class to
be 'Argument' instead of FunctionArgument.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2217 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
5109f75f50501e3bd8ade66029ca485aeb359ff6 08-Apr-2002 Chris Lattner <sabre@nondot.org> * Add virtual print methods
* s/Method/Function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2172 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0edcc41253410eb3bdafa8e341704f4be5bef552 29-Mar-2002 Chris Lattner <sabre@nondot.org> s/Method/Function/


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2024 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
19b0411c95335018f0d1c6b6f029983fc2d79761 26-Mar-2002 Chris Lattner <sabre@nondot.org> Transform uses of Method into uses of Function.
Rename MethodArgument to FunctionArgument
Fix some _really_ out of date comments


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1986 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
79cc5bc9126928dfbca70ec1b09843467ff3d399 23-Mar-2002 Chris Lattner <sabre@nondot.org> Update documentation, rename Method to Function, move typedef to Value.h for now.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
1b139b406006f78455a65baa52f056898251a26a 23-Mar-2002 Chris Lattner <sabre@nondot.org> Add transition typedef to Function


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
9aa4142dad5316aed1ee1014b6bc1977092ce9fb 12-Feb-2002 Chris Lattner <sabre@nondot.org> * Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" file
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file
* Method.h no longer #includes BasicBlock.h


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1743 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
697954c15da58bd8b186dbafdedd8b06db770201 20-Jan-2002 Chris Lattner <sabre@nondot.org> Changes to build successfully with GCC 3.02


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1503 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
a4268ad38974da17ba38378328c84919245c2f5c 13-Dec-2001 Chris Lattner <sabre@nondot.org> Implement proper iterator tags


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1441 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
7a1767520611d9ff6face702068de858e1cadf2c 04-Dec-2001 Chris Lattner <sabre@nondot.org> Renamed inst_const_iterator -> const_inst_iterator
Renamed op_const_iterator -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1408 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6197b0fe5466f3df29946bdcd47bd2ad462ea007 26-Nov-2001 Chris Lattner <sabre@nondot.org> Implement "internal vs external linkage" which corresponds to the C notion of static


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1362 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
b08d519a541920854c944ed45a67629f38573118 08-Nov-2001 Chris Lattner <sabre@nondot.org> Remove unneeded forward decl


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1216 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4dea947926f166b91db700e5547336bdbfcec481 08-Nov-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Removed MachineCodeForMethod object and made it an annotation.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1183 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
6c80e732dc6a145d66913017775ef3c7d560832c 30-Oct-2001 Chris Lattner <sabre@nondot.org> Fix ordering problem. Found by purify. :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1042 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
0ac8f7ce5a1c3e21b518775f83ca5c14e56b9246 22-Oct-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Added object of class MachineCodeForMethod.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@953 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
349d591161e3926da4f0c7c2808d70a31abaf583 15-Oct-2001 Chris Lattner <sabre@nondot.org> Update comment, remove misleading method


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@806 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c649458d184f07e00d009d7b15939ed1e494e1b1 15-Oct-2001 Vikram S. Adve <vadve@cs.uiuc.edu> Added getEntryNode() and getExitNode() functions.
The latter are actually bogus and will be fixed by me soon.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
4387370c1c6dd64ad01be0fc91836616d908e917 03-Oct-2001 Chris Lattner <sabre@nondot.org> Factor parentness out of Module & GlobalVariable into GlobalValue
Implement SymbolTable debug/dump utility


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@710 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
ef9c23f2812322ae5c5f3140bfbcf92629d7ff47 03-Oct-2001 Chris Lattner <sabre@nondot.org> * Both Method & GlobalVariable now subclass GlobalValue
* ConstPoolPointerReference now represents a pointer to a GlobalValue
* Methods name references are now explicit pointers to methods
* Rename Value::GlobalVal to Value::GlobalVariableVal to avoid confusion


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@703 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
b00c582b6d40e6b9ff2d1ed4f5eaf7930e792ace 02-Oct-2001 Chris Lattner <sabre@nondot.org> Commit more code over to new cast style


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@697 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
9636a91649f168f41b477cba705287665e054f79 01-Oct-2001 Chris Lattner <sabre@nondot.org> Add support for new style casts


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@694 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
3ff4387113d7e74a8aa73f80c3518cb95f09a64b 29-Sep-2001 Chris Lattner <sabre@nondot.org> Pull iterators out of CFG.h and CFGdecls and put them in Support directory


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@664 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
be07811cd0469e55ceecbe413639acaef49ceefd 10-Sep-2001 Chris Lattner <sabre@nondot.org> * Method::getType should return type cast as MethodType, eliminate getMethodType
* Make Type::*Ty not be const types
* Add a new Type.def file to provide info about types
* Add a full complement of casting methods to the Type class


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@533 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
70cc3397f84c2e1fd69c059a0ef89e398e847b00 10-Sep-2001 Chris Lattner <sabre@nondot.org> Implement global variable support


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@530 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
f7bd6392906a8edb31a802c835b074e5cbdce774 07-Sep-2001 Chris Lattner <sabre@nondot.org> * Support new setName interface
* Make the iterator a little nicer


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
52f2750ddb466f44f7cea48a86a1cf4e52f2f8e2 15-Jul-2001 Chris Lattner <sabre@nondot.org> Rename 'isMethodExternal' to 'isExternal'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
dc4c3f2f5fc6132885d590631b54de0be2c659be 14-Jul-2001 Chris Lattner <sabre@nondot.org> Made the following changes:
* ValueHolder became a 3 argument template. This allows for BasicBlock to
use the value holder arg as a typesafe parent pointer.
* SymTabValue no longer inherits from Value
* Method does not inherit from only SymTabValue. Now it inherits from both
STV & Value.
* Module does not inherit from only SymTabValue. Now it inherits from both
STV & Value.
* Updated the SymTabValue.h file to reference SymTabValue instead of STDef
in several places
* Added isArraySelector & isStructSelector to GetElementPtr instruction


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@177 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
c8b25d40cbec063b1ca99cc1adf794399c6d05c0 07-Jul-2001 Chris Lattner <sabre@nondot.org> Changed the fundemental architecture of Operands for Instructions. Now
Operands are maintained as a vector<Use> in the User class, and operator
iterators are provided as before. Getting an operand no longer requires
a virtual function call.

WARNING: getOperand(x) where x >= getNumOperands() will now assert instead
of returning null!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@149 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
1020b3982c9eae15844c5612b0cf251917931b1d 28-Jun-2001 Chris Lattner <sabre@nondot.org> Add extra forwarding accessor methods so that getMethodList(), getBasicBlocks()
and getInstList() are obsolete... except for when modifying those lists. This
makes code much more succinct and to the point.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
d6a7b7552f5cc0a254b2faaf91451d85870ca7dd 25-Jun-2001 Chris Lattner <sabre@nondot.org> CFG.h: change the iterator tag
Method.h: Add an iterator type.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h
009505452b713ed2e3a8e99c5545a6e721c65495 06-Jun-2001 Chris Lattner <sabre@nondot.org> Initial revision


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/include/llvm/Function.h