Intel® VTune™ Amplifier XE 2013 Неизвестный исходный файл

У меня есть неизвестный исходный файл в моем отчете, из-за чего я не могу определить правильный цикл для анализа моего отчета.

Я хочу показать исходный код с анализом vtune, однако, если я скомпилирую c и получу исполняемый файл. Когда я пытаюсь проанализировать поведение, я могу проверить только ассемблерный код! У кого-нибудь есть идея, как показать исходный код? также, если я хочу сделать itt_pause() и itt_resum(), как я могу это сделать без компилятора icc, я скомпилирую файл как

gcc -c -std=c99 -O2 app.c
gcc -o app app.o

исходный код, который мне нужно проанализировать:

#include <stdio.h>
#include <stdlib.h>


int foo_data_collected1()
{
    int sum = 0;
    for (int i = 0; i < 100; i++)
    {
        if ((i & 0xffffffff) == 0)
        {
            sum++;
            printf("T");
        }
        printf("F");
    }

    return sum;
}


int foo_data_collected2()
{
    int sum = 0;
    for (int i = 0; i < 10000000L; i++)
    {
        if ((i & 2) == 0)
        {
            sum++;

        }
    }

    return sum;
}

int foo_data_collected3()
{
    int sum = 0;
    for (int i = 0; i < 10000000L; i++)
    {
        if ((i & 0x80000000) == 0)
        {
            sum++;
        }
    }

    return sum;
}

int foo_data_collected4()
{
    int sum = 0;
    for (int i = 0; i < 10000000L; i++)
    {
        if ((i & 4) == 0)
        {
            sum++;
        }
    }

    return sum;
}

int foo_data_collected5()
{
    int sum = 0;
    for (int i = 0; i < 10000000L; i++)
    {
        if ((i & 3) == 0)
        {
            sum++;
        }
    }

    return sum;
}

int main()
{

    int sum = 0;

    sum = foo_data_collected1();

    printf("\nSum = %d\n", sum);


    return 0;
}

person keivn    schedule 19.03.2014    source источник


Ответы (1)


Используйте параметр компилятора -g при компиляции исходников для добавления отладочной информации.

gcc -g -c -std=c99 -O2 app.c
gcc -o app app.o
person Elalfer    schedule 20.03.2014