diff --git a/ChangeLog b/ChangeLog index 4e884af9b..d7b4fdb8c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2010-11-13 Dietmar Warning + * analysis/dctran.c, devices/*/*load.c: hide obsolete labels and local variables + for configuring --enable-nobypass and --enable-predictor + 2010-11-06 Robert Larice * src/frontend/inpcom.c : Thank you Éric Larouche, for the report and fix of a bug concerning diff --git a/src/spicelib/analysis/dctran.c b/src/spicelib/analysis/dctran.c index 6ca396762..0580d99c3 100644 --- a/src/spicelib/analysis/dctran.c +++ b/src/spicelib/analysis/dctran.c @@ -31,6 +31,10 @@ Modified: 2000 AlansFixes #include "cluster.h" #endif +#ifdef PREDICTOR +#include "nipred.h" +#endif /* PREDICTOR */ + #ifdef HAS_WINDOWS /* hvogt 10.03.99, nach W. Mues */ void SetAnalyse(char * Analyse, int Percent); #endif diff --git a/src/spicelib/devices/bjt/bjtload.c b/src/spicelib/devices/bjt/bjtload.c index 620f85e7a..c1b622fc2 100644 --- a/src/spicelib/devices/bjt/bjtload.c +++ b/src/spicelib/devices/bjt/bjtload.c @@ -117,7 +117,9 @@ BJTload(GENmodel *inModel, CKTcircuit *ckt) double vtc; double vte; double vtn; +#ifndef PREDICTOR double xfact; +#endif double xjrb; double xjtf; double xmc; @@ -711,7 +713,9 @@ next2: perturbation is being carried out */ if(SenCond)continue; +#ifndef NOBYPASS load: +#endif /* * load current excitation vector */ diff --git a/src/spicelib/devices/bjt2/bjt2load.c b/src/spicelib/devices/bjt2/bjt2load.c index a05de1036..fc6a12c6e 100644 --- a/src/spicelib/devices/bjt2/bjt2load.c +++ b/src/spicelib/devices/bjt2/bjt2load.c @@ -119,7 +119,9 @@ BJT2load(GENmodel *inModel, CKTcircuit *ckt) double vtc; double vte; double vtn; +#ifndef PREDICTOR double xfact; +#endif double xjrb; double xjtf; double xmc; @@ -753,7 +755,9 @@ next2: perturbation is being carried out */ if(SenCond)continue; +#ifndef NOBYPASS load: +#endif m = here->BJT2m; /* * load current excitation vector diff --git a/src/spicelib/devices/bsim1/b1ld.c b/src/spicelib/devices/bsim1/b1ld.c index be4a3de33..aa345b75f 100644 --- a/src/spicelib/devices/bsim1/b1ld.c +++ b/src/spicelib/devices/bsim1/b1ld.c @@ -88,7 +88,9 @@ B1load(GENmodel *inModel, CKTcircuit *ckt) double vgdo = 0.0; double vgs = 0.0; double von = 0.0; +#ifndef PREDICTOR double xfact = 0.0; +#endif double xnrm = 0.0; double xrev = 0.0; int Check = 0; @@ -528,8 +530,9 @@ B1load(GENmodel *inModel, CKTcircuit *ckt) ((!(ckt->CKTmode & MODETRANOP)) || (!(ckt->CKTmode & MODEUIC))) && (!(ckt->CKTmode & MODEINITSMSIG))) goto line850; - +#ifndef NOBYPASS line755: +#endif if( here->B1mode > 0 ) { args[0] = GateDrainOverlapCap; diff --git a/src/spicelib/devices/bsim2/b2ld.c b/src/spicelib/devices/bsim2/b2ld.c index 13fb69e59..1f61c2a80 100644 --- a/src/spicelib/devices/bsim2/b2ld.c +++ b/src/spicelib/devices/bsim2/b2ld.c @@ -88,7 +88,9 @@ B2load(GENmodel *inModel, CKTcircuit *ckt) double vgdo; double vgs; double von; +#ifndef PREDICTOR double xfact; +#endif double xnrm; double xrev; int Check; @@ -530,8 +532,9 @@ B2load(GENmodel *inModel, CKTcircuit *ckt) ((!(ckt->CKTmode & MODETRANOP)) || (!(ckt->CKTmode & MODEUIC))) && (!(ckt->CKTmode & MODEINITSMSIG))) goto line850; - +#ifndef NOBYPASS line755: +#endif if( here->B2mode > 0 ) { args[0] = GateDrainOverlapCap; diff --git a/src/spicelib/devices/bsim3/b3ld.c b/src/spicelib/devices/bsim3/b3ld.c index acbe51c16..6eb69a61a 100644 --- a/src/spicelib/devices/bsim3/b3ld.c +++ b/src/spicelib/devices/bsim3/b3ld.c @@ -81,7 +81,10 @@ double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb; double tol; #endif double gcsgb, gcssb, MJ, MJSW, MJSWG; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double qgate=0.0, qbulk=0.0, qdrn=0.0, qsrc, qinoi, cqgate, cqbulk, cqdrn; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb; @@ -126,7 +129,10 @@ double TempRatio, tmp1, tmp2, tmp3, tmp4; double DIBL_Sft, dDIBL_Sft_dVd, Lambda, dLambda_dVg; double Idtot, Ibtot; -double tempv, a1, ScalingFactor; +#ifndef NOBYPASS +double tempv; +#endif +double a1, ScalingFactor; double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb; double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb; @@ -2408,8 +2414,9 @@ finished: if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif /* NQS begins */ if ((here->BSIM3nqsMod) || (here->BSIM3acnqsMod)) { qcheq = -(qbulk + qgate); diff --git a/src/spicelib/devices/bsim3soi/b4soild.c b/src/spicelib/devices/bsim3soi/b4soild.c index 1207f15ef..e248d03b8 100644 --- a/src/spicelib/devices/bsim3soi/b4soild.c +++ b/src/spicelib/devices/bsim3soi/b4soild.c @@ -146,7 +146,10 @@ int B4SOILoadOMP(B4SOIinstance *here, CKTcircuit *ckt) { double gcbdb, gcbgb, gcbsb, gcbeb, gcbT; double gcedb, gcegb, gcesb, gceeb, gceT; double gcTt, gTtg, gTtb, gTtdp, gTtt, gTtsp; - double vbd=0.0, vbs, vds, vgb, vgd, vgs, vgdo, xfact; + double vbd=0.0, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR + double xfact; +#endif double vg, vd, vs, vp, ve, vb; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; @@ -8409,8 +8412,9 @@ finished: /* returning Values to Calling Routine */ if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; T0 = vgd + DELTA_1; diff --git a/src/spicelib/devices/bsim3soi_dd/b3soiddld.c b/src/spicelib/devices/bsim3soi_dd/b3soiddld.c index f120799ab..7f2f9176a 100644 --- a/src/spicelib/devices/bsim3soi_dd/b3soiddld.c +++ b/src/spicelib/devices/bsim3soi_dd/b3soiddld.c @@ -117,7 +117,10 @@ double gcddb, gcdgb, gcdsb, gcdeb, gcdT; double gcbdb, gcbgb, gcbsb, gcbeb, gcbT; double gcedb, gcegb, gcesb, gceeb, gceT; double gcTt, gTtg, gTtb, gTte, gTtdp, gTtt, gTtsp; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vg, vd, vs, vp, ve, vb; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd, dVfb_dT; @@ -3648,8 +3651,9 @@ if (here->B3SOIDDdebugMod > 2) if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; T0 = vgd + DELTA_1; diff --git a/src/spicelib/devices/bsim3soi_fd/b3soifdld.c b/src/spicelib/devices/bsim3soi_fd/b3soifdld.c index 29244e48c..2b1982092 100644 --- a/src/spicelib/devices/bsim3soi_fd/b3soifdld.c +++ b/src/spicelib/devices/bsim3soi_fd/b3soifdld.c @@ -114,7 +114,10 @@ double gcddb, gcdgb, gcdsb, gcdeb, gcdT; double gcbdb, gcbgb, gcbsb, gcbeb, gcbT; double gcedb, gcegb, gcesb, gceeb, gceT; double gcTt, gTtg, gTtb, gTte, gTtdp, gTtt, gTtsp; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vg, vd, vs, vp, ve, vb; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd, dVfb_dT; @@ -2768,8 +2771,9 @@ if (here->B3SOIFDdebugMod > 2) if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; T0 = vgd + DELTA_1; diff --git a/src/spicelib/devices/bsim3soi_pd/b3soipdld.c b/src/spicelib/devices/bsim3soi_pd/b3soipdld.c index 97952aefe..b61996e41 100644 --- a/src/spicelib/devices/bsim3soi_pd/b3soipdld.c +++ b/src/spicelib/devices/bsim3soi_pd/b3soipdld.c @@ -110,7 +110,10 @@ double gcddb, gcdgb, gcdsb, gcdeb, gcdT; double gcbdb, gcbgb, gcbsb, gcbeb, gcbT; double gcedb, gcegb, gcesb, gceeb, gceT; double gcTt, gTtg, gTtb, gTtdp, gTtt, gTtsp; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vg, vd, vs, vp, ve, vb; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd, dVfb_dT; @@ -3617,8 +3620,9 @@ for (; model != NULL; model = model->B3SOIPDnextModel) if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; T0 = vgd + DELTA_1; diff --git a/src/spicelib/devices/bsim3v0/b3v0ld.c b/src/spicelib/devices/bsim3v0/b3v0ld.c index 7a714a468..9ba79c906 100644 --- a/src/spicelib/devices/bsim3v0/b3v0ld.c +++ b/src/spicelib/devices/bsim3v0/b3v0ld.c @@ -42,7 +42,10 @@ double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb; double tol; #endif double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc, cqgate, cqbulk, cqdrn; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd; @@ -75,7 +78,10 @@ double Xdep, dXdep_dVb, lt1, dlt1_dVb, ltw, dltw_dVb, Delt_vth, dDelt_vth_dVb; double Theta0, dTheta0_dVb; double TempRatio, tmp1, tmp2, tmp3, tmp4; double DIBL_Sft, dDIBL_Sft_dVd, Pmos_factor; -double tempv, a1; +#ifndef NOBYPASS +double tempv; +#endif +double a1; double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb; double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb; @@ -1542,8 +1548,9 @@ finished: /* returning Values to Calling Routine */ if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (model->BSIM3v0capMod == 1) diff --git a/src/spicelib/devices/bsim3v1/b3v1ld.c b/src/spicelib/devices/bsim3v1/b3v1ld.c index 7a25e86b5..5101495d7 100644 --- a/src/spicelib/devices/bsim3v1/b3v1ld.c +++ b/src/spicelib/devices/bsim3v1/b3v1ld.c @@ -45,7 +45,10 @@ double delvbd, delvbs, delvds, delvgd, delvgs; double Vfbeff, dVfbeff_dVg, dVfbeff_dVd, dVfbeff_dVb, V3, V4; double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb; double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW, PhiBSWG, MJSWG; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc, cqgate, cqbulk, cqdrn; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd; @@ -80,7 +83,10 @@ double Xdep, dXdep_dVb, lt1, dlt1_dVb, ltw, dltw_dVb, Delt_vth, dDelt_vth_dVb; double Theta0, dTheta0_dVb; double TempRatio, tmp1, tmp2, tmp3, tmp4; double DIBL_Sft, dDIBL_Sft_dVd, Lambda, dLambda_dVg; -double tempv, a1; +#ifndef NOBYPASS +double tempv; +#endif +double a1; double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb; double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb; @@ -2025,8 +2031,9 @@ finished: /* returning Values to Calling Routine */ if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (model->BSIM3v1capMod == 0) diff --git a/src/spicelib/devices/bsim3v1a/b3v1ald.c b/src/spicelib/devices/bsim3v1a/b3v1ald.c index 01825f5fd..4c52fca08 100644 --- a/src/spicelib/devices/bsim3v1a/b3v1ald.c +++ b/src/spicelib/devices/bsim3v1a/b3v1ald.c @@ -40,7 +40,10 @@ double delvbd, delvbs, delvds, delvgd, delvgs; double Vfbeff, dVfbeff_dVg, dVfbeff_dVd, dVfbeff_dVb, V3, V4; double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb; double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc, cqgate, cqbulk, cqdrn; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd; @@ -73,7 +76,10 @@ double Xdep, dXdep_dVb, lt1, dlt1_dVb, ltw, dltw_dVb, Delt_vth, dDelt_vth_dVb; double Theta0, dTheta0_dVb; double TempRatio, tmp1, tmp2, tmp3, tmp4; double DIBL_Sft, dDIBL_Sft_dVd, Pmos_factor; -double tempv, a1; +#ifndef NOBYPASS +double tempv; +#endif +double a1; double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb; double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb; diff --git a/src/spicelib/devices/bsim3v1s/b3v1sld.c b/src/spicelib/devices/bsim3v1s/b3v1sld.c index dedd16585..b6fdf2a75 100644 --- a/src/spicelib/devices/bsim3v1s/b3v1sld.c +++ b/src/spicelib/devices/bsim3v1s/b3v1sld.c @@ -40,7 +40,10 @@ double delvbd, delvbs, delvds, delvgd, delvgs; double Vfbeff, dVfbeff_dVg, dVfbeff_dVd, dVfbeff_dVb, V3, V4; double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb; double gcsgb, gcssb, PhiB, PhiBSW, MJ, MJSW, PhiBSWG, MJSWG; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double qgate=0.0, qbulk=0.0, qdrn=0.0, qsrc=0.0, cqgate=0.0, cqbulk=0.0, cqdrn=0.0; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; double Vgs_eff, Vfb, dVfb_dVb, dVfb_dVd; diff --git a/src/spicelib/devices/bsim3v32/b3v32ld.c b/src/spicelib/devices/bsim3v32/b3v32ld.c index 63947befb..d5b4d24f2 100644 --- a/src/spicelib/devices/bsim3v32/b3v32ld.c +++ b/src/spicelib/devices/bsim3v32/b3v32ld.c @@ -48,7 +48,10 @@ double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb, gcgdb, gcggb, gcgsb, gcsdb; double tol; #endif double gcsgb, gcssb, MJ, MJSW, MJSWG; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double qgate = 0.0, qbulk = 0.0, qdrn = 0.0, qsrc; double qinoi, cqgate, cqbulk, cqdrn; double Vds, Vgs, Vbs, Gmbs, FwdSum, RevSum; @@ -89,7 +92,10 @@ double Theta0, dTheta0_dVb; double TempRatio, tmp1, tmp2, tmp3, tmp4; double DIBL_Sft, dDIBL_Sft_dVd, Lambda, dLambda_dVg; double Idtot, Ibtot; -double tempv, a1, ScalingFactor; +#ifndef NOBYPASS +double tempv; +#endif +double a1, ScalingFactor; double Vgsteff, dVgsteff_dVg, dVgsteff_dVd, dVgsteff_dVb; double Vdseff, dVdseff_dVg, dVdseff_dVd, dVdseff_dVb; diff --git a/src/spicelib/devices/bsim4/b4ld.c b/src/spicelib/devices/bsim4/b4ld.c index b4ed1f71a..8a075c94b 100644 --- a/src/spicelib/devices/bsim4/b4ld.c +++ b/src/spicelib/devices/bsim4/b4ld.c @@ -119,7 +119,10 @@ double delvges, delvgms, vgmb; double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb; double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vdbs, vdbd, vsbs, vsbdo, vsbd; double delvdbs, delvdbd, delvsbs; double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct; @@ -3945,8 +3948,9 @@ finished: here->BSIM4cgso = cgso; here->BSIM4qgso = qgso; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (here->BSIM4mode > 0) { if (here->BSIM4trnqsMod == 0) diff --git a/src/spicelib/devices/bsim4v2/b4v2ld.c b/src/spicelib/devices/bsim4v2/b4v2ld.c index 7fb93ba51..d44d809e6 100644 --- a/src/spicelib/devices/bsim4v2/b4v2ld.c +++ b/src/spicelib/devices/bsim4v2/b4v2ld.c @@ -55,7 +55,10 @@ double delvges, delvgms, vgmb; double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb; double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vdbs, vdbd, vsbs, vsbdo, vsbd; double delvdbs, delvdbd, delvsbs; double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct; @@ -3476,8 +3479,9 @@ finished: here->BSIM4v2cgso = cgso; here->BSIM4v2qgso = qgso; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (here->BSIM4v2mode > 0) { if (here->BSIM4v2trnqsMod == 0) diff --git a/src/spicelib/devices/bsim4v3/b4v3ld.c b/src/spicelib/devices/bsim4v3/b4v3ld.c index 56d6924af..829918f01 100644 --- a/src/spicelib/devices/bsim4v3/b4v3ld.c +++ b/src/spicelib/devices/bsim4v3/b4v3ld.c @@ -60,7 +60,10 @@ double delvges, delvgms, vgmb; double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb; double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vdbs, vdbd, vsbs, vsbdo, vsbd; double delvdbs, delvdbd, delvsbs; double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct; @@ -3558,8 +3561,9 @@ finished: here->BSIM4v3cgso = cgso; here->BSIM4v3qgso = qgso; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (here->BSIM4v3mode > 0) { if (here->BSIM4v3trnqsMod == 0) diff --git a/src/spicelib/devices/bsim4v4/b4v4ld.c b/src/spicelib/devices/bsim4v4/b4v4ld.c index afc7027b5..85c21db10 100644 --- a/src/spicelib/devices/bsim4v4/b4v4ld.c +++ b/src/spicelib/devices/bsim4v4/b4v4ld.c @@ -77,7 +77,10 @@ double delvges, delvgms, vgmb; double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb; double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vdbs, vdbd, vsbs, vsbdo, vsbd; double delvdbs, delvdbd, delvsbs; double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct; @@ -3686,8 +3689,9 @@ finished: here->BSIM4v4cgso = cgso; here->BSIM4v4qgso = qgso; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (here->BSIM4v4mode > 0) { if (here->BSIM4v4trnqsMod == 0) diff --git a/src/spicelib/devices/bsim4v5/b4v5ld.c b/src/spicelib/devices/bsim4v5/b4v5ld.c index 20b9af5d2..f37714649 100644 --- a/src/spicelib/devices/bsim4v5/b4v5ld.c +++ b/src/spicelib/devices/bsim4v5/b4v5ld.c @@ -79,7 +79,10 @@ double delvges, delvgms, vgmb; double gcgmgmb=0.0, gcgmdb=0.0, gcgmsb=0.0, gcdgmb, gcsgmb; double gcgmbb=0.0, gcbgmb, qgmb, qgmid=0.0, ceqqgmid; -double vbd, vbs, vds, vgb, vgd, vgs, vgdo, xfact; +double vbd, vbs, vds, vgb, vgd, vgs, vgdo; +#ifndef PREDICTOR +double xfact; +#endif double vdbs, vdbd, vsbs, vsbdo, vsbd; double delvdbs, delvdbd, delvsbs; double delvbd_jct, delvbs_jct, vbs_jct, vbd_jct; @@ -3728,8 +3731,9 @@ finished: here->BSIM4v5cgso = cgso; here->BSIM4v5qgso = qgso; - +#ifndef NOBYPASS line755: +#endif ag0 = ckt->CKTag[0]; if (here->BSIM4v5mode > 0) { if (here->BSIM4v5trnqsMod == 0) diff --git a/src/spicelib/devices/dio/dioload.c b/src/spicelib/devices/dio/dioload.c index 7ff7ceba7..a1a97f867 100644 --- a/src/spicelib/devices/dio/dioload.c +++ b/src/spicelib/devices/dio/dioload.c @@ -47,7 +47,9 @@ DIOload(GENmodel *inModel, CKTcircuit *ckt) double geq; double gspr; /* area-scaled conductance */ double sarg; +#ifndef NOBYPASS double tol; /* temporary for tolerence calculations */ +#endif double vd; /* current diode voltage */ double vdtemp; double vt; /* K t / Q */ @@ -324,9 +326,9 @@ next2: *(ckt->CKTstate0 + here->DIOvoltage) = vd; if(SenCond) continue; - +#ifndef NOBYPASS load: - +#endif /* * load current vector */ diff --git a/src/spicelib/devices/hfet1/hfetload.c b/src/spicelib/devices/hfet1/hfetload.c index 85670ceb7..f9af258d9 100644 --- a/src/spicelib/devices/hfet1/hfetload.c +++ b/src/spicelib/devices/hfet1/hfetload.c @@ -66,7 +66,9 @@ int HFETAload(GENmodel *inModel, CKTcircuit *ckt) double vgs1; double vgd1; double vds1; +#ifndef PREDICTOR double xfact; +#endif double temp; double vt; double vgspp=0; diff --git a/src/spicelib/devices/hfet2/hfet2load.c b/src/spicelib/devices/hfet2/hfet2load.c index f8b5c7a5a..1dcbc33c2 100644 --- a/src/spicelib/devices/hfet2/hfet2load.c +++ b/src/spicelib/devices/hfet2/hfet2load.c @@ -54,7 +54,9 @@ int HFET2load(GENmodel *inModel, CKTcircuit *ckt) double vgs1; double vt; double vto; +#ifndef PREDICTOR double xfact; +#endif int icheck; int ichk1; int error; diff --git a/src/spicelib/devices/hisim/hsm1ld.c b/src/spicelib/devices/hisim/hsm1ld.c index 4750c5813..468fe9967 100644 --- a/src/spicelib/devices/hisim/hsm1ld.c +++ b/src/spicelib/devices/hisim/hsm1ld.c @@ -150,7 +150,10 @@ int HSM1load(GENmodel *inModel, register CKTcircuit *ckt) double delvbd, delvbs, delvds, delvgd, delvgs; double gcbdb, gcbgb, gcbsb, gcddb, gcdgb, gcdsb; double gcgdb, gcggb, gcgsb, gcsdb, gcsgb, gcssb; - double geq, xfact; + double geq; +#ifndef PREDICTOR + double xfact; +#endif double vbd, vbs, vcrit, vds, vgb, vgd, vgdo, vgs, von; double qgd, qgs, qgb; double gbbdp, gbbsp, gbspg, gbspdp, gbspb, gbspsp; @@ -981,8 +984,9 @@ int HSM1load(GENmodel *inModel, register CKTcircuit *ckt) /* bulk and channel charge plus overlaps */ if (!ChargeComputationNeeded) goto line850; - +#ifndef NOBYPASS line755: +#endif cgdo = here->HSM1_cgdo; cgso = here->HSM1_cgso; cgbo = here->HSM1_cgbo; diff --git a/src/spicelib/devices/jfet/jfetload.c b/src/spicelib/devices/jfet/jfetload.c index baa07dd29..7f502d0dd 100644 --- a/src/spicelib/devices/jfet/jfetload.c +++ b/src/spicelib/devices/jfet/jfetload.c @@ -63,7 +63,9 @@ JFETload(GENmodel *inModel, CKTcircuit *ckt) double vgdt; double vgs; double vgst; +#ifndef PREDICTOR double xfact; +#endif /* Modification for Sydney University JFET model */ double vto; double apart,cpart; diff --git a/src/spicelib/devices/jfet2/jfet2load.c b/src/spicelib/devices/jfet2/jfet2load.c index 090e16d7b..e522d1db2 100644 --- a/src/spicelib/devices/jfet2/jfet2load.c +++ b/src/spicelib/devices/jfet2/jfet2load.c @@ -50,7 +50,9 @@ JFET2load(GENmodel *inModel, CKTcircuit *ckt) double vds; double vgd; double vgs; +#ifndef PREDICTOR double xfact; +#endif int icheck; int ichk1; int error; diff --git a/src/spicelib/devices/mes/mesload.c b/src/spicelib/devices/mes/mesload.c index 0c22cf848..791143b3f 100644 --- a/src/spicelib/devices/mes/mesload.c +++ b/src/spicelib/devices/mes/mesload.c @@ -74,7 +74,9 @@ MESload(GENmodel *inModel, CKTcircuit *ckt) double vgs1; double vgst; double vto; +#ifndef PREDICTOR double xfact; +#endif double arg; int icheck; int ichk1; diff --git a/src/spicelib/devices/mesa/mesaload.c b/src/spicelib/devices/mesa/mesaload.c index 5dadef0ca..023c4cb11 100644 --- a/src/spicelib/devices/mesa/mesaload.c +++ b/src/spicelib/devices/mesa/mesaload.c @@ -78,7 +78,9 @@ MESAload(GENmodel *inModel, CKTcircuit *ckt) double vgdpp = 0.0; double vgs1 = 0.0; double vgd1 = 0.0; +#ifndef PREDICTOR double xfact; +#endif double temp; double vted; double vtes; diff --git a/src/spicelib/devices/mos1/mos1load.c b/src/spicelib/devices/mos1/mos1load.c index 749fa2ee7..10ba5ef1e 100644 --- a/src/spicelib/devices/mos1/mos1load.c +++ b/src/spicelib/devices/mos1/mos1load.c @@ -66,7 +66,9 @@ MOS1load(GENmodel *inModel, CKTcircuit *ckt) double vgs; double von; double vt; +#ifndef PREDICTOR double xfact = 0.0; +#endif int xnrm; int xrev; double capgs = 0.0; /* total gate-source capacitance */ @@ -833,7 +835,9 @@ next1: if(vbs <= -3*vt) { } #endif /*PREDICTOR*/ } +#ifndef NOBYPASS bypass: +#endif if(SenCond) continue; if ( (ckt->CKTmode & (MODEINITTRAN)) || diff --git a/src/spicelib/devices/mos2/mos2load.c b/src/spicelib/devices/mos2/mos2load.c index e5094e87b..d36959e78 100644 --- a/src/spicelib/devices/mos2/mos2load.c +++ b/src/spicelib/devices/mos2/mos2load.c @@ -74,7 +74,9 @@ MOS2load(GENmodel *inModel, CKTcircuit *ckt) double vgs; double von; double vt; /* K * T / Q */ +#ifndef PREDICTOR double xfact = 0.0; +#endif double capgs = 0.0; /* total gate-source capacitance */ double capgd = 0.0; /* total gate-drain capacitance */ double capgb = 0.0; /* total gate-bulk capacitance */ diff --git a/src/spicelib/devices/mos3/mos3load.c b/src/spicelib/devices/mos3/mos3load.c index d470348dc..26a578875 100644 --- a/src/spicelib/devices/mos3/mos3load.c +++ b/src/spicelib/devices/mos3/mos3load.c @@ -65,7 +65,9 @@ MOS3load(GENmodel *inModel, CKTcircuit *ckt) double vgs1; double vgs; double von; +#ifndef PREDICTOR double xfact = 0.0; +#endif int xnrm; int xrev; double capgs = 0.0; /* total gate-source capacitance */ @@ -1153,7 +1155,9 @@ innerline1000:; } #endif /*PREDICTOR*/ } +#ifndef NOBYPASS bypass: +#endif if(SenCond) continue; if ( (ckt->CKTmode & (MODEINITTRAN)) || diff --git a/src/spicelib/devices/mos6/mos6load.c b/src/spicelib/devices/mos6/mos6load.c index 52b20b91e..ffaee28b8 100644 --- a/src/spicelib/devices/mos6/mos6load.c +++ b/src/spicelib/devices/mos6/mos6load.c @@ -66,7 +66,9 @@ MOS6load(GENmodel *inModel, CKTcircuit *ckt) double vgs; double von; double vt; +#ifndef PREDICTOR double xfact = 0.0; +#endif int xnrm; int xrev; double capgs = 0.0; /* total gate-source capacitance */ @@ -846,7 +848,9 @@ next2: *(ckt->CKTstate0 + here->MOS6vbs) = vbs; } #endif /*PREDICTOR*/ } +#ifndef NOBYPASS bypass: +#endif if(SenCond) continue; if ( (ckt->CKTmode & (MODEINITTRAN)) || diff --git a/src/spicelib/devices/mos9/mos9load.c b/src/spicelib/devices/mos9/mos9load.c index 371e84b76..c3b12ec16 100644 --- a/src/spicelib/devices/mos9/mos9load.c +++ b/src/spicelib/devices/mos9/mos9load.c @@ -66,7 +66,9 @@ MOS9load(GENmodel *inModel, CKTcircuit *ckt) double vgs1; double vgs; double von; +#ifndef PREDICTOR double xfact = 0.0; +#endif int xnrm; int xrev; double capgs = 0.0; /* total gate-source capacitance */ @@ -1168,7 +1170,9 @@ next2: *(ckt->CKTstate0 + here->MOS9vbs) = vbs; } #endif /*PREDICTOR*/ } +#ifndef NOBYPASS bypass: +#endif if(SenCond) continue; diff --git a/src/spicelib/devices/soi3/soi3load.c b/src/spicelib/devices/soi3/soi3load.c index 27668c2b9..56cae73cf 100644 --- a/src/spicelib/devices/soi3/soi3load.c +++ b/src/spicelib/devices/soi3/soi3load.c @@ -109,7 +109,9 @@ SOI3load(GENmodel *inModel, CKTcircuit *ckt) double vgbs; double von; double vt; +#ifndef PREDICTOR double xfact; +#endif int xnrm; int xrev; @@ -2137,8 +2139,9 @@ SOI3load(GENmodel *inModel, CKTcircuit *ckt) ((!(ckt->CKTmode & MODETRANOP)) || (!(ckt->CKTmode & MODEUIC))) && (!(ckt->CKTmode & MODEINITSMSIG))) goto bypass2; +#ifndef NOBYPASS bypass1: - +#endif if (here->SOI3mode>0) { Frontcapargs[0] = FrontGateDrainOverlapCap; Frontcapargs[1] = FrontGateSourceOverlapCap; diff --git a/src/spicelib/devices/vbic/vbicload.c b/src/spicelib/devices/vbic/vbicload.c index d220dedc6..d1490e0b5 100644 --- a/src/spicelib/devices/vbic/vbicload.c +++ b/src/spicelib/devices/vbic/vbicload.c @@ -52,7 +52,10 @@ VBICload(GENmodel *inModel, CKTcircuit *ckt) ,Qbco,Qbco_Vbc,Ibcp,Ibcp_Vbcp,Iccp,Iccp_Vbep,Iccp_Vbci ,Iccp_Vbcp,Irs,Irs_Vrs,Qbcp,Qbcp_Vbcp,SCALE; int iret; - double vce, xfact; + double vce; +#ifndef PREDICTOR + double xfact; +#endif double vt; double delvbei; double delvbex;