Embedded Artistry libc
C Standard Library Support for Bare-metal Systems
strtoIxL.c File Reference
#include "gdtoaimp.h"
Include dependency graph for strtoIxL.c:

Go to the source code of this file.

Functions

int strtoIxL (CONST char *s, char **sp, void *a, void *b)
 

Function Documentation

◆ strtoIxL()

int strtoIxL ( CONST char *  s,
char **  sp,
void *  a,
void *  b 
)

Definition at line 41 of file strtoIxL.c.

43 {
44  static FPI fpi = {64, 1 - 16383 - 64 + 1, 32766 - 16383 - 64 + 1, 1, SI};
45  Long exp[2];
46  Bigint* B[2];
47  int k, rv[2];
48  ULong *L = (ULong*)a, *M = (ULong*)b;
49 
50  B[0] = Balloc(1);
51  B[0]->wds = 2;
52  k = strtoIg(s, sp, &fpi, exp, B, rv);
53  ULtoxL(L, B[0]->x, exp[0], rv[0]);
54  Bfree(B[0]);
55  if(B[1])
56  {
57  ULtoxL(M, B[1]->x, exp[1], rv[1]);
58  Bfree(B[1]);
59  }
60  else
61  {
62  M[0] = L[0];
63  M[1] = L[1];
64  M[2] = L[2];
65  }
66  return k;
67 }
int wds
Definition: gdtoaimp.h:487
void ULtoxL(ULong *L, const ULong *bits, Long exp, int k)
Definition: strtorxL.c:57
#define SI
Definition: gdtoaimp.h:635
unsigned Long ULong
Definition: gdtoa.h:41
void Bfree(Bigint *v)
Definition: misc.c:92
int strtoIg(CONST char *s00, char **se, FPI *fpi, Long *exp, Bigint **B, int *rvp)
Definition: strtoIg.c:43
Definition: gdtoa.h:86
Bigint * Balloc(int k)
Definition: misc.c:47
#define Long
Definition: gdtoa.h:38

References Balloc(), Bfree(), Long, SI, strtoIg(), ULtoxL(), and Bigint::wds.