llvm/lib/Transforms/Utils
Jeff Cohen 66c5fd6c53 When a function takes a variable number of pointer arguments, with a zero
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23888 91177308-0d34-0410-b5e6-96231b3b80d8
2005-10-23 04:37:20 +00:00
..
BasicBlockUtils.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
BreakCriticalEdges.cpp Teach SplitCriticalEdge to update LoopInfo if it is alive. This fixes 2005-08-13 01:38:43 +00:00
CloneFunction.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
CloneModule.cpp Eliminate all remaining tabs and trailing spaces. 2005-07-27 06:12:32 +00:00
CloneTrace.cpp Eliminate tabs and trailing spaces 2005-04-23 21:38:35 +00:00
CodeExtractor.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
DemoteRegToStack.cpp Fix DemoteRegToStack on an invoke. This fixes PR634. 2005-10-04 00:44:01 +00:00
InlineFunction.cpp Eliminate all remaining tabs and trailing spaces. 2005-07-27 06:12:32 +00:00
Local.cpp Constant fold llvm.sqrt 2005-09-28 01:34:32 +00:00
LoopSimplify.cpp remove dead code. The exit block list is computed on demand, thus does not 2005-08-13 01:30:36 +00:00
LowerAllocations.cpp When a function takes a variable number of pointer arguments, with a zero 2005-10-23 04:37:20 +00:00
LowerInvoke.cpp When a function takes a variable number of pointer arguments, with a zero 2005-10-23 04:37:20 +00:00
LowerSelect.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
LowerSwitch.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
Makefile
Mem2Reg.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
PromoteMemoryToRegister.cpp This code can handle non-dominating instructions 2005-08-05 00:57:45 +00:00
SimplifyCFG.cpp Clean up the code a bit. Use isInstructionTriviallyDead to be more aggressive 2005-10-03 23:43:43 +00:00
UnifyFunctionExitNodes.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
ValueMapper.cpp Remove trailing whitespace 2005-04-21 23:48:37 +00:00
ValueMapper.h Remove trailing whitespace 2005-04-21 23:48:37 +00:00