Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

Interger over/under flow in C?

Name: VIPPER 2012-05-01 13:18

Is there a way to implement a portable way of detecting over and underflows in C?

Another thing, my asm code that handles this for now doesnt work either. I cant figure out why not.

asm ("overflow: "
     "xorl %eax, %eax \n"
     "jno O_Ret \n"
     "incl %eax \n"
     "O_Ret: ret\n");

nig_t fuck () {
  nig_t ass = tits + dick;
  if (overflow)
    return piss;
  if (underflow)
    return shit;
  return ass;
}

Now if i could figure out a way for this to work it would only work temporary, as i will need a portable way in the future anyway.

Any help would be appreciated.

Name: Anonymous 2012-05-04 22:46

With GCC and clang you may compile with -fwrapv to define overflow, you may also compile with -ftrapv to generate a trap whenever overflow occurs.

On my platform and my version of GCC compiling with -ftrapv and overflowing produces a SIGABRT signal. I have no idea if this is typical behavior for GCC on other platform/architectures or if clang does the same, but if the behavior is somewhat uniform you may use a signal handler or something like that.

Name: bampu pantsu 2012-05-29 4:43

bampu pantsu

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List