bors
131a03664e
Auto merge of #113040 - Kobzol:llvm-remark-streamer, r=tmiasko
...
Add `-Zremark-dir` unstable flag to write LLVM optimization remarks to YAML
This PR adds an option for `rustc` to emit LLVM optimization remarks to a set of YAML files, which can then be digested by existing tools, like https://github.com/OfekShilon/optview2 . When `-Cremark-dir` is passed, and remarks are enabled (`-Cremark=all`), the remarks will be now written to the specified directory, **instead** of being printed to standard error output. The files are named based on the CGU from which they are being generated.
Currently, the remarks are written using the LLVM streaming machinery, directly in the diagnostics handler. It seemed easier than going back to Rust and then form there back to C++ to use the streamer from the diagnostics handler. But there are many ways to implement this, of course, so I'm open to suggestions :)
I included some comments with questions into the code. Also, I'm not sure how to test this.
r? `@tmiasko`
2023-07-02 12:48:44 +00:00
..
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-06-19 17:31:54 +00:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-05-05 18:32:20 +00:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-05-02 12:07:55 +00:00
2023-05-02 12:07:55 +00:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-04-02 17:54:24 -04:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-06-23 18:36:25 +01:00
2023-04-21 16:14:44 +00:00
2023-03-30 07:34:55 -05:00
2023-04-24 01:56:37 +02:00
2023-06-28 11:09:19 +10:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-05-17 23:54:21 -05:00
2023-05-02 12:07:55 +00:00
2023-05-17 11:39:11 +02:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-06-06 17:54:34 -04:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-04-03 01:34:05 +00:00
2023-05-07 12:38:47 +01:00
2023-05-02 12:07:55 +00:00
2023-05-02 12:07:55 +00:00
2023-05-02 12:07:55 +00:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-04-28 16:11:45 +02:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-05-19 11:02:16 +02:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-04-25 00:08:35 +02:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-04-25 00:08:35 +02:00
2023-03-30 07:58:50 -05:00
2023-05-23 07:37:16 +00:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-04-17 18:53:52 +02:00
2023-05-03 15:52:31 -07:00
2023-04-15 07:40:19 -07:00
2023-03-30 08:46:31 -05:00
2023-05-02 12:07:55 +00:00
2023-06-16 20:56:01 -04:00
2023-04-03 01:34:05 +00:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-05-11 14:47:56 +00:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-07-02 13:41:36 +02:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-06-07 21:03:51 +01:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-04-21 18:38:17 -07:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-05-17 12:07:12 +02:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-04-18 11:01:07 -07:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-06-30 21:13:24 +00:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-06-16 20:56:01 -04:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-04-12 05:34:21 -05:00
2023-03-30 07:34:55 -05:00
2023-06-27 23:22:44 +02:00
2023-04-13 21:58:35 +02:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-05-17 17:56:26 +08:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-04-03 10:23:08 +02:00
2023-05-02 12:07:55 +00:00
2023-03-30 07:34:55 -05:00
2023-04-27 18:22:06 +00:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 08:46:31 -05:00
2023-06-16 20:56:01 -04:00
2023-03-30 07:34:55 -05:00
2023-06-23 17:22:07 +00:00
2023-03-30 07:34:55 -05:00
2023-05-02 12:07:55 +00:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-04-19 00:39:20 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:58:50 -05:00
2023-04-03 10:23:15 +02:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-05-05 01:22:17 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:58:50 -05:00
2023-04-25 00:08:35 +02:00
2023-03-30 07:58:50 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 07:34:55 -05:00
2023-03-30 08:46:31 -05:00
2023-06-05 17:33:26 +02:00
2023-03-30 07:58:50 -05:00