Post Reply 
Summation on HP 42S
09-29-2018, 04:06 PM (This post was last modified: 09-29-2018 04:07 PM by ijabbott.)
Post: #45
RE: Summation on HP 42S
(09-29-2018 01:50 PM)Thomas Okken Wrote:  I am honestly curious to see examples of incorrect code that somehow manages to work as intended when not optimized, and fails when optimized. Maybe it exists, but it's not something I've come across.

Not my example, but consider this C program:

Code:
#include <stdio.h>

int f(void)
{
    int i;
    int j = 0;
    for (i = 1; i > 0; i += i)
        j++;
    return j;
}

int main(void)
{
    printf("%d\n", f());
    return 0;
}

Function f() takes the int value 1 and repeatedly doubles it until it overflows and goes negative. (Perhaps the programmer is intending to discover the number of non-sign bits in an int or something.)

Compile it in GCC with no optimisation and run it:

Code:
$ gcc foo.c
$ ./a.out
31

On my system, it prints 31 as shown.

Now recompile it with optimisation level 2 and run it again:

Code:
$ gcc -O2 foo.c
$ ./a.out

On my system, it just sits there in an infinite loop until I kill it.

If you think that is a bug in the optimiser, well, it isn't.

— Ian Abbott
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
Summation on HP 42S - lrdheat - 09-23-2018, 06:14 PM
RE: Summation on HP 42S - Didier Lachieze - 09-23-2018, 06:28 PM
RE: Summation on HP 42S - lrdheat - 09-23-2018, 06:41 PM
RE: Summation on HP 42S - lrdheat - 09-23-2018, 06:51 PM
RE: Summation on HP 42S - ijabbott - 09-23-2018, 07:40 PM
RE: Summation on HP 42S - burkhard - 09-25-2018, 12:58 PM
RE: Summation on HP 42S - John Keith - 09-25-2018, 04:15 PM
RE: Summation on HP 42S - Thomas Klemm - 09-23-2018, 08:29 PM
RE: Summation on HP 42S - lrdheat - 09-23-2018, 09:25 PM
RE: Summation on HP 42S - Didier Lachieze - 09-23-2018, 10:03 PM
RE: Summation on HP 42S - lrdheat - 09-23-2018, 10:02 PM
RE: Summation on HP 42S - lrdheat - 09-23-2018, 10:37 PM
RE: Summation on HP 42S - Thomas Klemm - 09-24-2018, 12:56 AM
RE: Summation on HP 42S - Albert Chan - 09-24-2018, 11:56 AM
RE: Summation on HP 42S - Thomas Klemm - 09-24-2018, 01:17 AM
RE: Summation on HP 42S - Thomas Klemm - 09-24-2018, 01:52 PM
RE: Summation on HP 42S - Albert Chan - 09-24-2018, 04:20 PM
RE: Summation on HP 42S - pier4r - 09-24-2018, 01:55 PM
RE: Summation on HP 42S - Frido Bohn - 09-25-2018, 01:59 PM
RE: Summation on HP 42S - Dieter - 09-25-2018, 04:47 PM
RE: Summation on HP 42S - Frido Bohn - 09-26-2018, 10:10 AM
RE: Summation on HP 42S - Albert Chan - 09-26-2018, 03:13 PM
RE: Summation on HP 42S - Albert Chan - 09-25-2018, 05:28 PM
RE: Summation on HP 42S - lrdheat - 09-25-2018, 05:17 PM
RE: Summation on HP 42S - lrdheat - 09-25-2018, 05:28 PM
RE: Summation on HP 42S - Albert Chan - 09-25-2018, 07:17 PM
RE: Summation on HP 42S - Valentin Albillo - 09-25-2018, 08:01 PM
RE: Summation on HP 42S - Albert Chan - 09-25-2018, 08:59 PM
RE: Summation on HP 42S - Albert Chan - 09-26-2018, 01:23 PM
RE: Summation on HP 42S - pier4r - 09-26-2018, 04:09 PM
RE: Summation on HP 42S - Thomas Klemm - 09-27-2018, 03:47 AM
RE: Summation on HP 42S - Ángel Martin - 09-27-2018, 05:27 AM
RE: Summation on HP 42S - pier4r - 09-27-2018, 10:37 PM
RE: Summation on HP 42S - Thomas Okken - 09-28-2018, 12:33 AM
RE: Summation on HP 42S - pier4r - 09-28-2018, 01:40 PM
RE: Summation on HP 42S - ijabbott - 09-28-2018, 11:20 PM
RE: Summation on HP 42S - Albert Chan - 09-29-2018, 12:51 AM
RE: Summation on HP 42S - Valentin Albillo - 09-29-2018, 01:15 AM
RE: Summation on HP 42S - Thomas Okken - 09-29-2018, 01:24 AM
RE: Summation on HP 42S - ijabbott - 09-29-2018, 11:58 AM
RE: Summation on HP 42S - Albert Chan - 09-29-2018, 12:49 PM
RE: Summation on HP 42S - Thomas Okken - 09-29-2018, 01:50 PM
RE: Summation on HP 42S - ijabbott - 09-29-2018 04:06 PM
RE: Summation on HP 42S - Thomas Okken - 09-29-2018, 06:15 PM
RE: Summation on HP 42S - ijabbott - 09-29-2018, 09:10 PM
RE: Summation on HP 42S - Thomas Okken - 09-29-2018, 09:33 PM
RE: Summation on HP 42S - Albert Chan - 09-30-2018, 03:03 PM
RE: Summation on HP 42S - ijabbott - 09-30-2018, 05:28 PM
RE: Summation on HP 42S - brickviking - 10-01-2018, 08:40 AM
RE: Summation on HP 42S - pier4r - 09-29-2018, 05:59 PM
RE: Summation on HP 42S - Thomas Okken - 09-29-2018, 08:59 PM



User(s) browsing this thread: 8 Guest(s)