139static inline int Psr_ManRangeSizeName(
Psr_Ntk_t *
p,
int Name )
143static inline int Psr_ManRangeSizeRange(
Psr_Ntk_t *
p,
int Range )
149 pStr = Psr_NtkStr(
p, Range );
151 Left = Right = atoi( pStr + 1 );
152 pStr =
strstr( pStr,
"=" );
154 Right = atoi( pStr + 1 );
155 return 1 + (Left > Right ? Left - Right : Right - Left);
157static inline int Psr_ManRangeSizeConst(
Psr_Ntk_t *
p,
int Const )
159 return atoi( Psr_NtkStr(
p, Const) );
161static inline int Psr_ManRangeSizeConcat(
Psr_Ntk_t *
p,
int Con )
167static inline int Psr_ManRangeSizeSignal(
Psr_Ntk_t *
p,
int Sig )
169 int Value = Abc_Lit2Var2( Sig );
172 return Psr_ManRangeSizeName(
p, Value );
174 return Psr_ManRangeSizeRange(
p, Psr_SliceRange(
p, Value) );
176 return Psr_ManRangeSizeConst(
p, Value );
178 return Psr_ManRangeSizeConcat(
p, Value );
184 int i, Sig, Count = 0;
185 assert( Vec_IntSize(vSlices) > 0 );
187 Count += Psr_ManRangeSizeSignal(
p, Sig );
#define ABC_NAMESPACE_IMPL_START
#define ABC_NAMESPACE_IMPL_END
typedefABC_NAMESPACE_IMPL_START struct Bac_Trip_t_ Bac_Trip_t
DECLARATIONS ///.
int Psr_ManRangeSizeArray(Psr_Ntk_t *p, Vec_Int_t *vSlices, int Start, int Stop)
struct Psr_Ntk_t_ Psr_Ntk_t
BASIC TYPES ///.
Psr_ManType_t
INCLUDES ///.
Bac_ObjType_t
INCLUDES ///.
typedefABC_NAMESPACE_IMPL_START struct Vec_Int_t_ Vec_Int_t
DECLARATIONS ///.
#define Vec_IntForEachEntryStartStop(vVec, Entry, i, Start, Stop)