aboutsummaryrefslogtreecommitdiffstats
path: root/docs/faq_keymap.md
Commit message (Expand)AuthorAgeFilesLines
* make custom_keycode_names.md a faq entry insteadskullY2020-03-051-0/+11
* [Docs] Remove some outdated FAQ items (#7607)fauxpark2019-12-111-62/+1
* Remove obsolete note about media keys in MacOS (#6631)Steve Purcell2019-10-301-7/+0
* Replace instances of KEYMAP with LAYOUTnoroadsleft2019-02-211-2/+2
* Add tap_random_base64 and software timer info to Useful Functions doc (#4360)Drashna Jaelre2018-12-011-17/+0
* Keymap FAQ: fix positions of KC_HENK and KC_MHEN for JIS layout (#4482)noroadsleft2018-11-251-2/+2
* Docs: Update image in FAQ/Keymap: KC_EQLS -> KC_EQL (#3660)zgtm2018-08-151-2/+2
* Update FAQ section on power keysfauxpark2018-08-111-5/+4
* Update FAQ section on Apple Fn (#3574)fauxpark2018-08-051-5/+5
* More thoroughly document Bootmagic and Command (#2455)skullydazed2018-03-021-12/+21
* backlight breathing overhaul (#2187)Balz Guenat2018-01-011-1/+1
* Trim trailing whitespacefauxpark2017-12-091-2/+2
* Fix some of the more obvious typosfauxpark2017-12-091-5/+5
* Convert all headings to Title Casefauxpark2017-12-091-16/+16
* Flesh out the grave escape overridesskullY2017-12-031-4/+2
* Restructure the hardware and feature docs to make things easier to find (#1888)skullydazed2017-10-241-0/+11
* Doc updates from going through every fileskullY2017-08-161-2/+2
* Overhaul the Getting Started section and add a FAQ sectionskullY2017-08-161-1/+1
* fix code block formattingBalz Guenat2017-08-111-1/+1
* add description of new option to docs and add option (commented out) into tem...Balz Guenat2017-08-111-1/+3
* Update a bunch of docsskullY2017-07-031-74/+20
* convert docs to lowercase and underscoresJack Humbert2017-06-101-0/+265
.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
/**CFile****************************************************************

  FileName    [amapCore.c]

  SystemName  [ABC: Logic synthesis and verification system.]

  PackageName [Technology mapper for standard cells.]

  Synopsis    [Core mapping procedures.]

  Author      [Alan Mishchenko]
  
  Affiliation [UC Berkeley]

  Date        [Ver. 1.0. Started - June 20, 2005.]

  Revision    [$Id: amapCore.c,v 1.00 2005/06/20 00:00:00 alanmi Exp $]

***********************************************************************/

#include "amapInt.h"

////////////////////////////////////////////////////////////////////////
///                        DECLARATIONS                              ///
////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////
///                     FUNCTION DEFINITIONS                         ///
////////////////////////////////////////////////////////////////////////

/**Function*************************************************************

  Synopsis    [This procedure sets default parameters.]

  Description []
               
  SideEffects []

  SeeAlso     []

***********************************************************************/
void Amap_ManSetDefaultParams( Amap_Par_t * p )
{
    memset( p, 0, sizeof(Amap_Par_t) );
    p->nIterFlow = 1;            // iterations of area flow
    p->nIterArea = 4;            // iteratoins of exact area
    p->fUseMuxes = 0;            // enables the use of MUXes
    p->fUseXors  = 1;            // enables the use of XORs
    p->fFreeInvs = 0;            // assume inverters are ABC_FREE (area = 0)
    p->fEpsilon  = (float)0.001; // used to compare floating point numbers
    p->fVerbose  = 0;            // verbosity flag
}

/**Function*************************************************************

  Synopsis    []

  Description []
               
  SideEffects []

  SeeAlso     []

***********************************************************************/
Vec_Ptr_t * Amap_ManTest( Aig_Man_t * pAig, Amap_Par_t * pPars )
{
    extern void * Abc_FrameReadLibGen2();
    Vec_Ptr_t * vRes;
    Amap_Man_t * p;
    Amap_Lib_t * pLib;
    int clkTotal = clock();
    pLib = Abc_FrameReadLibGen2();
    if ( pLib == NULL )
    {
        printf( "Library is not available.\n" );
        return NULL;
    }
    p = Amap_ManStart( Aig_ManNodeNum(pAig) );
    p->pPars = pPars;
    p->pLib  = pLib;
    p->fAreaInv = pPars->fFreeInvs? 0.0 : pLib->pGateInv->dArea;
    p->fUseMux = pPars->fUseMuxes && pLib->fHasMux;
    p->fUseXor = pPars->fUseXors && pLib->fHasXor;
    p->ppCutsTemp = ABC_CALLOC( Amap_Cut_t *, 2 * pLib->nNodes );
    p->pMatsTemp = ABC_CALLOC( int, 2 * pLib->nNodes );
    Amap_ManCreate( p, pAig );
    Amap_ManMap( p );
    vRes = NULL;
    vRes = Amap_ManProduceMapped( p );
    Amap_ManStop( p );
if ( pPars->fVerbose )
{
ABC_PRT( "Total runtime", clock() - clkTotal );
}
    return vRes;
}


////////////////////////////////////////////////////////////////////////
///                       END OF FILE                                ///
////////////////////////////////////////////////////////////////////////