Vixen
02b45cc4
csharp
public sealed class IrFunction

A function in the IR: a signature, its local storage, and a structured body. The function owns value numbering, so %0 means the same thing throughout one function and nothing outside it.

No guide page documents this yet — the page shows what the code says about itself.

Fields and properties (7)

  • public string Name
  • public IrType ReturnType
  • public IReadOnlyList<IrVariable> Parameters
  • public IReadOnlyList<IrVariable> Locals
  • public IrBlock Body

    The function body. Empty for a declaration with no body.

  • public int ValueCount

    How many values this function defines; also the next free id.

  • public bool Discards

    Whether any path through this function throws the fragment away.

Methods (2)

  • public IrFunction(string name, IrType returnType)

    A function in the IR: a signature, its local storage, and a structured body. The function owns value numbering, so %0 means the same thing throughout one function and nothing outside it.

  • public override string ToString()

Used by (35)

  • AtomicTestsVixen.Raven.Tests
  • BuilderVixen.Raven
  • CallGraphVixen.Raven
  • CodeGenTestBaseVixen.Raven.Tests
  • CompiledLibraryTestsVixen.Raven.Tests
  • ComputeTestsVixen.Raven.Tests
  • DiscardTestsVixen.Raven.Tests
  • FunctionShellVixen.Raven
  • FunctionVerifierVixen.Raven
  • GlslEmitterVixen.Raven
  • GroupSharedTestsVixen.Raven.Tests
  • ImportPrunerVixen.Raven
  • InOutTestsVixen.Raven.Tests
  • InheritanceTestsVixen.Raven.Tests
  • Int64TestsVixen.Raven.Tests
  • IrCallInstructionVixen.Raven
  • IrCapabilitiesVixen.Raven
  • IrEntryPointVixen.Raven
  • IrModuleVixen.Raven
  • IrPrinterVixen.Raven
  • IrShaderVixen.Raven
  • IrVerifierVixen.Raven
  • IrVerifierTestsVixen.Raven.Tests
  • LibraryBuilderVixen.Raven
  • LibraryIrDecoderVixen.Raven
  • LibraryIrEncoderVixen.Raven
  • LibraryTreeTestsVixen.Raven.Tests
  • LowererVixen.Raven
  • LoweringResultVixen.Raven
  • LoweringTestBaseVixen.Raven.Tests
  • LoweringTestsVixen.Raven.Tests
  • MonomorphisationTestsVixen.Raven.Tests
  • SpirvEmitterVixen.Raven
  • StreamTestsVixen.Raven.Tests
  • WritableResourceTestsVixen.Raven.Tests