小编Joh*_*ugo的帖子

如何清楚gdb命令屏幕?

是否可以清除gdb的命令窗口?我的意思是,在gdb中是否有一个命令与clearbash终端中的命令一样(对于命令窗口)?

c c++ gcc gdb binutils

47
推荐指数
2
解决办法
2万
查看次数

GCC配置文件引导优化(PGO)收集哪些信息以及哪些优化使用它?

我启用时GCC会收集哪些信息-fprofile-generate,哪些优化确实使用了收集的信息(设置-fprofile-use标志时)?

我需要引用这里.我已经搜索了一段时间,但没有找到任何记录.

有关链接时间优化(LTO)的信息将是一个加号!= d

c++ gcc lto pgo

39
推荐指数
2
解决办法
2万
查看次数

bash/Makefile中双美元符号的含义是什么?

在Makefile中插入shell脚本时,我们(?)使用双美元符号($$)来引用变量.为什么会这样?

for number in 1 2 3 4 ; do \
    echo $$number ; \
done
Run Code Online (Sandbox Code Playgroud)

linux bash makefile

23
推荐指数
2
解决办法
9840
查看次数

什么是__gmon_start__符号?

我正在用gcc hello.c -o hello -O3编译这段代码

#include <stdio.h>

int main(void) {
    printf("Hello world\n");
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我列出我得到的重新安置时:

test@southpark$ readelf -r hello | grep gmon
080495a4  00000106 R_386_GLOB_DAT    00000000   __gmon_start__
080495b4  00000107 R_386_JUMP_SLOT   00000000   __gmon_start__
Run Code Online (Sandbox Code Playgroud)

当我列出这个文件中的符号时,我得到:

test@southpark$ readelf -s hello | grep gmon
     1: 00000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
    48: 00000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
Run Code Online (Sandbox Code Playgroud)

gmon_start与gprof有什么共同点吗?即使我没有使用-pg或-g编译/链接,为什么还要对该符号进行重定位?哪个库可以解析这个符号?

c linux gcc elf binutils

20
推荐指数
1
解决办法
1万
查看次数

在Kcachegrind中打开perf.data

我在某处读到可以将perf.data(从Linux perf record分析工具输出)转换为kcachegrind可以解析/绘制的格式,但是我没有找到能够执行此转换的应用程序,并且kcachegrind也没有打开perf.data.

这是可能的:使用kcachegrind查看perf输出?我可以使用哪种工具?

linux performance profiling valgrind perf

20
推荐指数
1
解决办法
3154
查看次数

在大型C++项目中使用vim进行编码

是否有任何VIM插件可用于索引C++项目代码库?

我会说明能够指定一个类的功能,并且可能是一个方法,并查看方法/类定义的文件/行.

c++ vim

13
推荐指数
1
解决办法
2万
查看次数

LLVM,GCC 4.2和Apple LLVM编译器3.1之间的区别

LLVM GCC 4.2和Apple LLVM编译器3.1之间的主要区别是什么?

我对编译器很新,所以任何帮助都表示赞赏.此外,我对这两个编译器如何影响游戏性能特别感兴趣.

compiler-construction llvm llvm-gcc ios

10
推荐指数
1
解决办法
7385
查看次数

ELF动态加载程序符号查找排序

解析动态重定位时符号查找的搜索顺序是什么?

解析共享库的符号时,加载器首先搜索"主可执行文件"(让主可执行文件覆盖定义......)或者什么?

linux gcc elf ld binutils

8
推荐指数
1
解决办法
2273
查看次数

自动展开并输出C/C++代码

我正在做一个实验,第一步是展开一个循环(来自C/C++)十几次(例如:10,50等)并输出C/C++展开的代码.有没有可以用来自动化这种展开的工具?

换句话说,我需要的是:

C/C++ source/loop --->> TOOL (Unroll by X) ---->  Unrolled C/C++ source/loop
Run Code Online (Sandbox Code Playgroud)

compiler-construction gcc cpu-architecture llvm icc

8
推荐指数
1
解决办法
349
查看次数

Perf注释,仅显示源代码

我正在使用Perf来执行一些分析实验.

但是,我想知道特定代码区域的结果,并且在这种情况下,查看每行源代码(在本例中为C/C++)的结果(百分比)将简化任务.

perf annotate有一个视图,它显示ASM +源代码,也可以选择关闭显示源代码.我想知道如何完成此选项的另一端,即仅显示源代码+其每行事件的百分比并隐藏ASM输出.这有可能perf吗?

建议使用其他工具吗?我也在使用Vtune但是我想做的分析没有用.Valgrind是不可能的,太慢了.

我正在使用运行Ubuntu 13.04的x64.

linux performance linux-kernel perf

7
推荐指数
1
解决办法
2701
查看次数