Heejin Ahn
8b49b6bed6
[WebAssembly] Place 'try' and 'catch' correctly wrt EH_LABELs
...
Summary:
After instruction selection phase, possibly-throwing calls, which were
previously invoke, are wrapped in `EH_LABEL` instructions. For example:
```
EH_LABEL <mcsymbol .Ltmp0>
CALL_VOID @foo ...
EH_LABEL <mcsymbol .Ltmp1>
```
`EH_LABEL` is placed also in the beginning of EH pads:
```
bb.1 (landing-pad):
EH_LABEL <mcsymbol .Ltmp2>
...
```
And we'd like to maintian this relationship, so when we place a `try`,
```
TRY ...
EH_LABEL <mcsymbol .Ltmp0>
CALL_VOID @foo ...
EH_LABEL <mcsymbol .Ltmp1>
```
When we place a `catch`,
```
bb.1 (landing-pad):
EH_LABEL <mcsymbol .Ltmp2>
%0:except_ref = CATCH ...
...
```
Previously we didn't treat EH_LABELs specially, so `try` was placed
right before a call, and `catch` was placed in the beginning of an EH
pad.
Reviewers: dschuff
Subscribers: sbc100, jgravelle-google, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D58914
llvm-svn: 355996
2019-03-13 00:37:31 +00:00
..
2019-02-20 22:40:57 +00:00
2019-02-21 03:27:00 +00:00
2018-11-19 17:10:36 +00:00
2019-02-28 18:39:08 +00:00
2019-02-28 18:39:08 +00:00
2019-02-13 22:11:16 +00:00
2019-03-09 04:31:37 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-01-08 06:25:55 +00:00
2019-03-03 22:35:56 +00:00
2019-03-05 20:35:34 +00:00
2018-08-27 15:45:51 +00:00
2019-01-08 06:25:55 +00:00
2019-01-08 06:25:55 +00:00
2019-01-14 22:03:43 +00:00
2019-01-14 22:03:43 +00:00
2019-03-05 20:35:34 +00:00
2019-01-08 06:25:55 +00:00
2019-01-08 06:25:55 +00:00
2018-05-10 17:49:11 +00:00
2019-01-18 02:47:48 +00:00
2018-05-10 17:49:11 +00:00
2018-11-19 17:10:36 +00:00
2018-08-27 15:45:51 +00:00
2019-03-13 00:37:31 +00:00
2018-10-25 23:55:10 +00:00
2019-02-27 00:50:53 +00:00
2018-08-27 15:45:51 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2018-08-27 15:45:51 +00:00
2019-01-08 06:25:55 +00:00
2018-11-19 17:10:36 +00:00
2019-02-23 00:07:39 +00:00
2019-01-08 06:25:55 +00:00
2019-02-23 00:07:39 +00:00
2018-11-19 17:10:36 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-03-01 00:12:13 +00:00
2019-02-28 18:39:08 +00:00
2018-05-10 17:49:11 +00:00
2019-01-09 14:20:20 +00:00
2019-01-08 06:25:55 +00:00
2019-01-09 14:20:20 +00:00
2019-01-08 06:25:55 +00:00
2018-11-19 17:10:36 +00:00
2019-02-23 00:07:39 +00:00
2018-08-27 15:45:51 +00:00
2018-11-19 17:10:36 +00:00
2019-03-05 20:35:34 +00:00
2019-02-01 22:27:34 +00:00
2019-02-23 00:07:39 +00:00
2018-08-27 15:45:51 +00:00
2019-01-08 06:25:55 +00:00
2019-01-08 06:25:55 +00:00
2019-01-03 23:10:11 +00:00
2019-01-03 23:10:11 +00:00
2019-01-03 23:10:11 +00:00
2019-01-03 23:10:11 +00:00
2019-01-08 06:25:55 +00:00
2019-02-23 00:07:39 +00:00
2019-01-08 06:25:55 +00:00
2018-08-27 15:45:51 +00:00
2018-08-27 15:45:51 +00:00
2019-01-08 06:25:55 +00:00
2019-02-23 00:07:39 +00:00
2018-05-10 17:49:11 +00:00
2018-11-20 19:25:07 +00:00
2018-11-08 22:56:26 +00:00
2018-11-20 19:25:07 +00:00
2019-03-05 20:35:34 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-01-29 10:53:42 +00:00
2019-01-29 10:53:42 +00:00
2019-02-23 00:07:39 +00:00
2019-01-14 18:25:29 +00:00
2019-02-23 00:07:39 +00:00
2019-01-08 06:25:55 +00:00
2018-05-10 17:49:11 +00:00
2018-11-18 11:58:47 +00:00
2019-01-08 06:25:55 +00:00
2019-01-08 06:25:55 +00:00
2018-11-19 17:10:36 +00:00
2018-11-19 17:10:36 +00:00
2019-03-05 20:35:34 +00:00
2019-01-14 22:03:43 +00:00
2019-01-31 00:35:37 +00:00
2019-02-23 00:07:39 +00:00
2018-11-08 02:35:28 +00:00
2019-01-08 06:25:55 +00:00
2018-11-19 17:10:36 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 18:59:01 +00:00
2019-02-23 00:07:39 +00:00
2019-01-08 06:25:55 +00:00
2019-02-23 00:07:39 +00:00
2019-01-15 02:16:03 +00:00
2019-01-10 22:32:11 +00:00
2019-01-28 23:44:31 +00:00
2019-01-31 23:22:39 +00:00
2019-01-10 22:32:11 +00:00
2019-01-10 22:32:11 +00:00
2019-01-10 22:32:11 +00:00
2019-01-10 22:32:11 +00:00
2019-01-10 22:32:11 +00:00
2018-12-21 06:58:15 +00:00
2019-01-02 20:43:08 +00:00
2019-01-10 22:32:11 +00:00
2019-01-29 23:44:48 +00:00
2019-02-23 18:59:01 +00:00
2019-01-10 22:32:11 +00:00
2019-03-02 03:32:25 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2018-12-17 22:04:44 +00:00
2018-08-27 15:45:51 +00:00
2018-08-27 15:45:51 +00:00
2019-01-08 06:25:55 +00:00
2019-02-23 00:07:39 +00:00
2019-02-28 18:39:08 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-02-23 00:07:39 +00:00
2019-02-26 05:20:19 +00:00
2018-07-02 16:03:49 +00:00
2019-02-28 18:39:08 +00:00
2019-02-26 03:29:59 +00:00