forked from OSchip/llvm-project
![]() The initial change was insufficiently complete for always getting the semantics of __builtin_longjmp correct. The builtin is translated into a `tInt_eh_sjlj_longjmp` DAG node. This node set R7 as clobbered. However, the code would then follow up with a clobber of R11. I had failed to notice the imp-def,kill on R7 in the isel. Unfortunately, it seems that it is not possible to conditionalise the Defs list via an !if. Instead, construct a new parallel WIN node and prefer that when targeting windows. This ensures that we now both correctly model the __builtin_longjmp as well as construct the frame in a more ABI conformant manner. llvm-svn: 263123 |
||
---|---|---|
.. | ||
aapcs.ll | ||
alloca.ll | ||
builtin_longjmp.ll | ||
chkstk-movw-movt-isel.ll | ||
chkstk.ll | ||
division.ll | ||
dllimport.ll | ||
frame-register.ll | ||
global-minsize.ll | ||
hard-float.ll | ||
libcalls.ll | ||
long-calls.ll | ||
mangling.ll | ||
memset.ll | ||
mov32t-bundling.ll | ||
movw-movt-relocations.ll | ||
no-aeabi.ll | ||
no-arm-mode.ll | ||
no-eabi.ll | ||
no-ehabi.ll | ||
no-frame-register.ll | ||
overflow.ll | ||
pic.ll | ||
read-only-data.ll | ||
stack-probe-non-default.ll | ||
structors.ll | ||
tls.ll | ||
trivial-gnu-object.ll | ||
vla.ll |