1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-22 20:43:44 +02:00
llvm-mirror/include/llvm
Filip Pizlo 5803608763 Stackmaps are used for OSR exits, which is a custom kind of unwinding. Hence, they
should not be marked nounwind.

Marking them nounwind caused crashes in the WebKit FTL JIT, because if we enable 
sufficient optimizations, LLVM starts eliding compact_unwind sections (or any unwind 
data for that matter), making deoptimization via stackmaps impossible.

This changes the stackmap intrinsic to be may-throw, adds a test for exactly the 
sympton that WebKit saw, and fixes TableGen to handle un-attributed intrinsics.

Thanks to atrick and philipreames for reviewing this.

llvm-svn: 201826
2014-02-20 23:57:31 +00:00
..
ADT SCCIterator: Merge MinVisitNumStack and VisitStack 2014-02-13 18:26:15 +00:00
Analysis Fix a typo in a comment. 2014-02-19 03:20:46 +00:00
AsmParser Move the LLVM IR asm writer header files into the IR directory, as they 2014-01-07 12:34:26 +00:00
Bitcode Make parseBitcodeFile return an ErrorOr<Module *>. 2014-01-15 01:08:23 +00:00
CodeGen Add back r201608, r201622, r201624 and r201625 2014-02-19 17:23:20 +00:00
Config Unconditionally include msan_interface.h when building with MSan. 2014-02-20 11:37:03 +00:00
DebugInfo llvm-dwarfdump: type unit dwo support 2014-01-09 05:08:24 +00:00
ExecutionEngine Rename some member variables from TD to DL. 2014-02-18 15:33:12 +00:00
IR Stackmaps are used for OSR exits, which is a custom kind of unwinding. Hence, they 2014-02-20 23:57:31 +00:00
IRReader
LineEditor Introduce line editor library. 2014-01-31 23:46:14 +00:00
LTO LTO API: add lto_module_create_from_memory_with_path. 2014-02-10 23:26:14 +00:00
MC Re-commit: Demote EmitRawText call in AsmPrinter::EmitInlineAsm() and remove hasRawTextSupport() call 2014-02-13 14:44:26 +00:00
Object Object/COFF: Fix possible truncation bug. 2014-02-20 19:14:56 +00:00
Option Option parsing: support case-insensitive option matching. 2013-08-28 20:04:31 +00:00
Support Unconditionally include msan_interface.h when building with MSan. 2014-02-20 11:37:03 +00:00
TableGen Typo fix. 2014-01-24 23:40:08 +00:00
Target move getNameWithPrefix and getSymbol to TargetMachine. 2014-02-19 20:30:41 +00:00
Transforms Rename some member variables from TD to DL. 2014-02-18 15:33:12 +00:00
AutoUpgrade.h Debug Info: drop debug info via upgrading path if version number does not match. 2013-12-02 21:29:56 +00:00
CMakeLists.txt The llvm_headers_do_not_build project needs to be excluded from the default build, otherwise it gets built (at least in Visual Studio 2013). 2014-01-28 16:07:10 +00:00
DebugInfo.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
DIBuilder.h typo 2014-01-18 02:12:10 +00:00
GVMaterializer.h Use error_code in GVMaterializer. 2013-11-05 19:36:34 +00:00
InitializePasses.h Revert "Revert "Add Constant Hoisting Pass" (r200034)" 2014-01-25 02:02:55 +00:00
InstVisitor.h Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
LinkAllIR.h [cleanup] Move the Dominators.h and Verifier.h headers into the IR 2014-01-13 09:26:24 +00:00
LinkAllPasses.h Revert "Revert "Add Constant Hoisting Pass" (r200034)" 2014-01-25 02:02:55 +00:00
Linker.h Set the SuppressWarnings option on tool level and propagate to the library. 2014-02-20 22:19:24 +00:00
Pass.h Disable most IR-level transform passes on functions marked 'optnone'. 2014-02-06 00:07:05 +00:00
PassAnalysisSupport.h
PassManager.h Move the old pass manager infrastructure into a legacy namespace and 2013-11-09 12:26:54 +00:00
PassRegistry.h Re-sort all of the includes with ./utils/sort_includes.py so that 2014-01-07 11:48:04 +00:00
PassSupport.h [opt][PassInfo] Allow opt to run passes that need target machine. 2014-01-16 21:44:34 +00:00