Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Apr 2010 21:02:43 +0300
From:      Leonidas Tsampros <ltsampros@upnet.gr>
To:        yuri@rawbw.com
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Why system gcc that is 4.2.1 produces different code than gcc-4.2.1 compiled from sources?
Message-ID:  <87k4rvh0l8.fsf@upnet.gr>
In-Reply-To: <4BD3E923.9030606@rawbw.com> (yuri@rawbw.com's message of "Sun, 25 Apr 2010 00:02:59 -0700")
References:  <4BD3E923.9030606@rawbw.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Yuri <yuri@rawbw.com> writes:

> I ran this simple example:
>
> #include <stdlib.h>
> #include <stdio.h>
>
> int fib(int AnArg) {
>  if (AnArg <= 2) return (1);
>  return (fib(AnArg-1)+fib(AnArg-2));
> }
>
> int main(int argc, char* argv[]) {
>  int n = atoi(argv[1]);
>  printf("fib(%i)=%i\n", n, fib(n));
> }
>
> through system gcc and gcc built from sources. Both are 4.2.1. Options: -O3.
>
> Average runtime with the argument 45 is quite different: system gcc is
> 3.650s and gcc-4.2.1 from sources is 3.740.
> CPU: Intel(R) Core(TM) i7 CPU       @ 9200 @ 2.67GHz
>

Hi,

I'm pretty sure that a small difference in execution time does not mean
that the produced code is different. In order to check the code gcc
produced, you need to do something like this:

objdump -d executable

or even use gdb's disassemble command.

Regards,
Leonidas

> Yuri




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87k4rvh0l8.fsf>