From 33a8e4360f5050416130517e5c7a1007d06aa90f Mon Sep 17 00:00:00 2001
From: Ed Schouten
Date: Wed, 3 Jun 2009 13:28:00 +0000
Subject: Import LLVM, at r72770.
This should fix LLVM PR4225.
---
docs/LangRef.html | 14 +-
include/llvm/ADT/ilist.h | 8 +-
include/llvm/Analysis/ConstantFolding.h | 2 +-
include/llvm/Analysis/ScalarEvolutionExpressions.h | 1 -
include/llvm/Support/TargetFolder.h | 12 +-
lib/Analysis/ConstantFolding.cpp | 2 -
lib/CodeGen/LiveVariables.cpp | 14 -
lib/CodeGen/MachO.h | 423 +++++++++++++++++
lib/CodeGen/MachOCodeEmitter.cpp | 207 +++++++++
lib/CodeGen/MachOCodeEmitter.h | 129 ++++++
lib/CodeGen/MachOWriter.cpp | 509 +++++----------------
lib/CodeGen/MachOWriter.h | 404 +---------------
lib/CodeGen/RegAllocLinearScan.cpp | 91 ----
lib/CodeGen/VirtRegRewriter.cpp | 24 +-
lib/System/Atomic.cpp | 2 +-
lib/Target/ARM/ARMLoadStoreOptimizer.cpp | 4 +-
lib/Target/X86/X86FastISel.cpp | 2 +-
lib/Transforms/Scalar/CodeGenPrepare.cpp | 5 +-
test/Archive/GNU.a | Bin 0 -> 4210 bytes
test/Archive/IsNAN.o | Bin 0 -> 2280 bytes
test/Archive/MacOSX.a | Bin 0 -> 4176 bytes
test/Archive/SVR4.a | Bin 0 -> 4214 bytes
test/Archive/xpg4.a | Bin 0 -> 4214 bytes
test/CodeGen/ARM/str_pre-2.ll | 13 +
test/CodeGen/X86/2009-06-02-RewriterBug.ll | 362 +++++++++++++++
test/CodeGen/X86/codegen-prepare-cast.ll | 24 +
test/CodeGen/X86/x86-store-gv-addr.ll | 10 +
utils/NewNightlyTest.pl | 43 +-
28 files changed, 1361 insertions(+), 944 deletions(-)
create mode 100644 lib/CodeGen/MachO.h
create mode 100644 lib/CodeGen/MachOCodeEmitter.cpp
create mode 100644 lib/CodeGen/MachOCodeEmitter.h
create mode 100644 test/Archive/GNU.a
create mode 100644 test/Archive/IsNAN.o
create mode 100644 test/Archive/MacOSX.a
create mode 100644 test/Archive/SVR4.a
create mode 100644 test/Archive/xpg4.a
create mode 100644 test/CodeGen/ARM/str_pre-2.ll
create mode 100644 test/CodeGen/X86/2009-06-02-RewriterBug.ll
create mode 100644 test/CodeGen/X86/codegen-prepare-cast.ll
create mode 100644 test/CodeGen/X86/x86-store-gv-addr.ll
diff --git a/docs/LangRef.html b/docs/LangRef.html
index 32441cc540a59..f0a171be8af5a 100644
--- a/docs/LangRef.html
+++ b/docs/LangRef.html
@@ -2403,9 +2403,10 @@ cleanup is performed in the case of either a longjmp or a thrown
exception. Additionally, this is important for implementation of
'catch' clauses in high-level languages that support them.
-It is not valid to reference the return value of an invoke call from
-anywhere not dominated by the normal label, since an unwind does not
-provide a return value.
+For the purposes of the SSA form, the definition of the value
+returned by the 'invoke' instruction is deemed to occur on
+the edge from the current block to the "normal" label. If the callee
+unwinds then no return value is available.
Example:
@@ -4518,6 +4519,11 @@ may be used as the label arguments.
block and the PHI instructions: i.e. PHI instructions must be first in
a basic block.
+For the purposes of the SSA form, the use of each incoming value is
+deemed to occur on the edge from the corresponding predecessor block
+to the current block (but after any definition of an 'invoke'
+instruction's return value on the same edge).
+
Semantics:
At runtime, the 'phi' instruction logically takes on the value
@@ -7104,7 +7110,7 @@ declare void @llvm.stackprotector( i8* <guard>, i8** <slot> )
Chris Lattner
The LLVM Compiler Infrastructure
- Last modified: $Date: 2009-05-30 18:08:30 +0200 (Sat, 30 May 2009) $
+ Last modified: $Date: 2009-06-03 12:20:10 +0200 (Wed, 03 Jun 2009) $