Puma Reference Manual Puma: Puma::CT_GnuAsmDef Class Reference



Puma::CT_GnuAsmDef Class Reference

#include <Puma/GnuCTree.h>

Inheritance diagram for Puma::CT_GnuAsmDef:

Inheritance graph

List of all members.


Detailed Description

Tree node representing an extended inline assembly definition.

Example:

 asm("fsinx %1,%0" : "=f" (result) : "f" (angle)); 

Public Member Functions

 CT_GnuAsmDef (CTree *a, CTree *cv, CTree *o, CTree *s, CTree *op0, CTree *op1, CTree *cl, CTree *c, CTree *sc)
 Constructor.
const char * NodeName () const
 Get the name of the node.
virtual int Sons () const
 Get the number of sons.
virtual CTreeSon (int n) const
 Get the n-th son.
virtual void ReplaceSon (CTree *old_son, CTree *new_son)
 Replace a son.

Static Public Member Functions

static const char * NodeId ()
 Get the identifier for this node type.

Constructor & Destructor Documentation

Puma::CT_GnuAsmDef::CT_GnuAsmDef ( CTree a,
CTree cv,
CTree o,
CTree s,
CTree op0,
CTree op1,
CTree cl,
CTree c,
CTree sc 
) [inline]

Constructor.

Parameters:
a The keyword 'asm'.
cv Optional const/volatile qualifier sequence.
o Left parenthesis before the assembly.
s The assembly instructions.
op0 First operand.
op1 Second operand.
cl Clobbers.
c Right parenthesis behind the assembly.
sc The trailing semi-colon.


Member Function Documentation

static const char* Puma::CT_GnuAsmDef::NodeId (  )  [static]

Get the identifier for this node type.

Can be compared with NodeName().

Reimplemented from Puma::CT_AsmDef.

const char* Puma::CT_GnuAsmDef::NodeName (  )  const [inline, virtual]

Get the name of the node.

Can be compared with NodeId().

Reimplemented from Puma::CT_AsmDef.

virtual int Puma::CT_GnuAsmDef::Sons (  )  const [inline, virtual]

Get the number of sons.

Reimplemented from Puma::CT_AsmDef.

virtual CTree* Puma::CT_GnuAsmDef::Son ( int  n  )  const [inline, virtual]

Get the n-th son.

Parameters:
n The index of the son.
Returns:
The n-th son or NULL.

Reimplemented from Puma::CT_AsmDef.

virtual void Puma::CT_GnuAsmDef::ReplaceSon ( CTree old_son,
CTree new_son 
) [inline, virtual]

Replace a son.

Parameters:
old_son The son to replace.
new_son The new son.

Reimplemented from Puma::CT_AsmDef.




Puma Reference Manual. Created on 5 Nov 2008.