1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 03:23:01 +02:00
llvm-mirror/lib
Duncan Sands 09250d2dff The C++ exception handling personality function wants
to know about calls that cannot throw ('nounwind'):
if such a call does throw for some reason then the
personality will terminate the program.  The distinction
between an ordinary call and a nounwind call is that
an ordinary call gets an entry in the exception table
but a nounwind call does not.  This patch sets up the
exception table appropriately.  One oddity is that
I've chosen to bracket nounwind calls with labels (like
invokes) - the other choice would have been to bracket
ordinary calls with labels.  While bracketing
ordinary calls is more natural (because bracketing
by labels would then correspond exactly to getting an
entry in the exception table), I didn't do it because
introducing labels impedes some optimizations and I'm
guessing that ordinary calls occur more often than
nounwind calls.  This fixes the gcc filter2 eh test,
at least at -O0 (the inliner needs some tweaking at
higher optimization levels).

llvm-svn: 45197
2007-12-19 07:36:31 +00:00
..
Analysis Add explicit keywords, and fix a minor typo that they uncovered. 2007-12-14 15:41:34 +00:00
Archive finishing touches of bytecode -> bitcode changes. also unbreak Windows 2007-07-06 20:28:40 +00:00
AsmParser regenerate. 2007-12-17 01:17:35 +00:00
Bitcode Bring back int_x86_sse2_movl_dq intrinsic for backward compatibility. Make sure 2007-12-17 22:33:23 +00:00
CodeGen The C++ exception handling personality function wants 2007-12-19 07:36:31 +00:00
Debugger switch this to bitcode instead of bytecode 2007-05-06 09:29:13 +00:00
ExecutionEngine Change the PointerType api for creating pointer types. The old functionality of PointerType::get() has become PointerType::getUnqual(), which returns a pointer in the generic address space. The new prototype of PointerType::get() requires both a type and an address space. 2007-12-17 01:12:55 +00:00
Linker Fix PR1146: parameter attributes are longer part of 2007-11-27 13:23:08 +00:00
Support Don't have APInt.cpp depend upon DerivedTypes.h. This helps with splitting the 2007-12-11 06:53:58 +00:00
System Added "GetCurrentDirectory()" to sys::Path. 2007-12-18 22:07:33 +00:00
Target Add new immed16.ll test case, fix CellSPU errata to make test case work. 2007-12-19 07:35:06 +00:00
Transforms Fold subtracts into integer compares vs. zero. This improves generate code for this case on X86 2007-12-18 21:32:20 +00:00
VMCore remove a dead annotation 2007-12-18 19:04:24 +00:00
Makefile build lib/Archive instead of lib/Bytecode 2007-05-06 19:50:06 +00:00