On 07.12.22 10:09, Richard Biener wrote:
On Wed, Dec 7, 2022 at 9:51 AM Sebastian Huber
<sebastian.hu...@embedded-brains.de>  wrote:
On 06.12.22 17:08, Richard Biener wrote:
Likely.  I'd use the gimple_build () API from gimple-fold.h which
builds the expression(s) to a gimple_seq creating necessary temporaries
on-the-fly and then insert that sequence on the edge.
Thanks, I will have a look at this.

I am struggling to convert a uint32_type_node node to a gcov_type_node
(64-bit). I tried to use this:

        if (result != NULL_TREE)
         {
            tree tmp1 = make_temp_ssa_name (gcov_type_node, NULL, name);
           gassign *stmt7 = gimple_build_assign (result, VIEW_CONVERT_EXPR,
build1 (VIEW_CONVERT_EXPR, gcov_type_node,
                                            high));
You want

   gimple_build_assign (result, NOP_EXPR, high);

here (a conversion, from unsigned it will zero-extend)

Thanks, with this NOP_EXPR it did work. I have now a proof of concept ready. Should I wait for the GCC 14 development cycle or can I post a patch set now?

--
embedded brains GmbH
Herr Sebastian HUBER
Dornierstr. 4
82178 Puchheim
Germany
email: sebastian.hu...@embedded-brains.de
phone: +49-89-18 94 741 - 16
fax:   +49-89-18 94 741 - 08

Registergericht: Amtsgericht München
Registernummer: HRB 157899
Vertretungsberechtigte Geschäftsführer: Peter Rasmussen, Thomas Dörfler
Unsere Datenschutzerklärung finden Sie hier:
https://embedded-brains.de/datenschutzerklaerung/

Reply via email to