cost 176 ms
GCC不会发出我的指令,我试图避免分支 - GCC won`t emit my instruction, i tried to avoid branches

我需要减少代码中的分支数量。 有一个称为基准的基准,它具有一些代码,例如: 我在机器描述文件* .md中写了一个模式以避免分支: 在简单比较的情况下可以使用: GCC发出: 但是,如果我尝试同样的方法,但是使用了索引变量(数组):它将无法正常工作: GC ...

给定一个有两个参数的GIMPLE Call语句,我想添加第三个,如何? - Given a GIMPLE Call statment which has two arguments, I want to add a third one, how?

我必须做一些GIMPLE_CALL语句操作。 这个GIMPLE_CALL将有两个参数,例如:foo(a,b)。 我的目标是将此方法更改为具有三个参数的不同方法,例如zoo(a,b,c) 在我目前的方法中,GCC在编译示例源程序时崩溃。 当我所做的只是替换方法名称(即不更改参数号) ...

2019-05-06 13:53:58   1   42    c / gcc / gimple  
GCC插件API:Gimple Pass - GCC plugins API : Gimple pass

我一直在寻找有关编写GCC插件的在线资源。 我目前正在使用GCC版本7.3.0。 我试图编写一个简单的插件,其中包含一个将在PLUGIN_FINISH_TYPE上调用的PLUGIN_FINISH_TYPE 。 工作正常。 接下来,我试图编写一个使用“简单通行证”的插件,类似于此处列出 ...

如何分析GCC,RTL等GCC内部表示形式 - How to analyse GCC Internal Representation like GIMPLE, RTL

我已经使用命令-fdump-tree-all和-fdump-rtl-all生成了转储输出文件,并且得到了很多转储文件。 我已经读过,GIMPLE中的代码采用伪C语法,RTL转储文件的级别太低,无法理解。 有什么方法可以理解GIMPLE和RTL转储文件? 是否有任何软件可以将其转换为C代码或 ...

如何在gcc中间表示中保存树? 可能吗? - How to save a tree in gcc intermediate representation? Is it possible?

我想将树(特别是树的类型)以二进制形式保存在文件中,并且需要将此树加载到其他编译单元中。 例如: 我有一个main.c具有2个功能: 并且我想保存结构的类型( myTypeStruct )并将其加载到另一个涉及test.c的编译单元中,如下所示: 使用gcc插件,我想加载 ...

使用gcc插件修改变量声明的顺序 - Use gcc plugins to modify the order of variable declarations

我知道这很难做到,我应该避免这样做,但是我有这样做的理由。 我想在编译时修改某些字段声明的顺序,例如: 必须转向: 如果我选择交换i和c的顺序,我想知道如何更改具有tree的字段声明的location 有人知道我该怎么做吗? 谢谢 ! 我使用的是g ++ 4.9. ...

使用GCC插件打印调用的函数名称 - print called function name using GCC plugin

我需要为此使用gcc plugins打印程序的被调用函数的名称,我创建了一个通行证,该通行证将在ssa pass之后被调用,我已经启动了该插件,并且可以使用gimple_stmt_iterator在其语句上循环: 如何使用其gimple节点打印被调用函数的名称? 我是否还可以打印其他信 ...

GCC 可以编译 GIMPLE 吗? - Can GCC compile GIMPLE?

GIMPLE 是 GCC 系统的内部表示之一。 可以通过 -fdump-* 编译器参数转储 GIMPLE 或任何其他内部表示。 但是有没有办法编译转储的 GIMPLE 或任何其他表示? 似乎 GCC 没有 GIMPLE 前端。 我想做的是转储、分析、修改然后重新编译转储的 GIMPLE 以执行各种 ...

2014-02-09 14:51:03   2   1568    gcc / gimple  
为什么小于表达式转换为小于或等于gcc中的表达式 - why less than expression converts into less than or equal to expression in gcc

我正在进行代码优化并通过gcc内部。 我在我的程序中写了一个简单的表达式,然后检查了该表达式的gimple表示,我被卡住了为什么gcc已经这样做了。 说我有一个表达式: 然后在gimple表示中它将被转换为 我不知道为什么gcc这样做。 它是某种优化,如果是,那么任何人都可 ...

使用gcc的中间GIMPLE格式 - Playing with gcc's intermediate GIMPLE format

根据这篇文章, gcc在生成代码之前使用了几种中间格式。 我读到GIMPLE格式使用三个地址代码,这似乎是最容易使用的中间语言。 但是我需要更多细节,因为我需要构建一个可以获取中间代码并在生成最终代码之前插入一些代码的工具。 为此,我首先需要知道如何生成GIMPLE格式代码并将其保存在 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM