GNU Compiler Collection (GCC) Internals: GIMPLE_ASM

Next: `GIMPLE_ASSIGN`, Up: Tuple specific accessors [Contents][Index]

#### 12.7.1 `GIMPLE_ASM`

GIMPLE function: gimple gimple_build_asm (const char *string, ninputs, noutputs, nclobbers, ...)

  Build a `GIMPLE_ASM` statement. This statement is used for building in-line assembly constructs. `STRING` is the assembly code. `NINPUT` is the number of register inputs. `NOUTPUT` is the number of register outputs. `NCLOBBERS` is the number of clobbered registers. The rest of the arguments trees for each input, output, and clobbered registers.

GIMPLE function: gimple gimple_build_asm_vec (const char *, VEC(tree,gc) *, VEC(tree,gc) *, VEC(tree,gc) *)

  Identical to gimple_build_asm, but the arguments are passed in VECs.

GIMPLE function: unsigned gimple_asm_ninputs (gimple g)

  Return the number of input operands for `GIMPLE_ASM` `G`.

GIMPLE function: unsigned gimple_asm_noutputs (gimple g)

  Return the number of output operands for `GIMPLE_ASM` `G`.

GIMPLE function: unsigned gimple_asm_nclobbers (gimple g)

  Return the number of clobber operands for `GIMPLE_ASM` `G`.

GIMPLE function: tree gimple_asm_input_op (gimple g, unsigned index)

  Return input operand `INDEX` of `GIMPLE_ASM` `G`.

GIMPLE function: void gimple_asm_set_input_op (gimple g, unsigned index, tree in_op)

  Set `IN_OP` to be input operand `INDEX` in `GIMPLE_ASM` `G`.

GIMPLE function: tree gimple_asm_output_op (gimple g, unsigned index)

  Return output operand `INDEX` of `GIMPLE_ASM` `G`.

GIMPLE function: void gimple_asm_set_output_op (gimple g, unsigned index, tree out_op)

  Set `OUT_OP` to be output operand `INDEX` in `GIMPLE_ASM` `G`.

GIMPLE function: tree gimple_asm_clobber_op (gimple g, unsigned index)

  Return clobber operand `INDEX` of `GIMPLE_ASM` `G`.

GIMPLE function: void gimple_asm_set_clobber_op (gimple g, unsigned index, tree clobber_op)

  Set `CLOBBER_OP` to be clobber operand `INDEX` in `GIMPLE_ASM` `G`.

GIMPLE function: const char * gimple_asm_string (gimple g)

  Return the string representing the assembly instruction in `GIMPLE_ASM` `G`.

GIMPLE function: bool gimple_asm_volatile_p (gimple g)

  Return true if `G` is an asm statement marked volatile.

GIMPLE function: void gimple_asm_set_volatile (gimple g)

  Mark asm statement `G` as volatile.

GIMPLE function: void gimple_asm_clear_volatile (gimple g)

  Remove volatile marker from asm statement `G`.

Next: `GIMPLE_ASSIGN`, Up: Tuple specific accessors [Contents][Index]