File: imult32.c

package info (click to toggle)
libowfat 0.22-1
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 3,148 kB
  • ctags: 976
  • sloc: ansic: 10,424; makefile: 42
file content (11 lines) | stat: -rw-r--r-- 202 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
#include "safemult.h"

int imult32(int32 a,int32 b,int32* c) {
  int neg=(a<0);
  uint32 d;
  if (neg) a=-a;
  if (b<0) { neg^=1; b=-b; }
  if (umult32(a,b,&d)) return 0;
  *c=(neg?-d:d);
  return 1;
}