All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.alibaba.fastffi.llvm.BranchInst_cxx_0xfda3541f Maven / Gradle / Ivy

The newest version!
package com.alibaba.fastffi.llvm;

import com.alibaba.fastffi.CXXValue;
import com.alibaba.fastffi.FFIForeignType;
import com.alibaba.fastffi.FFINameAlias;
import com.alibaba.fastffi.FFISynthetic;
import com.alibaba.fastffi.FFITypeFactory;
import java.lang.Object;
import java.lang.String;
import java.lang.UnsatisfiedLinkError;

@FFIForeignType("llvm::BranchInst")
@FFISynthetic("com.alibaba.fastffi.llvm.BranchInst")
public class BranchInst_cxx_0xfda3541f extends Instruction_cxx_0x5169a57 implements BranchInst {
  public static final int SIZE;

  public static final int HASH_SHIFT;

  static {
    try {
      System.loadLibrary("llvm4jni");
    } catch (UnsatisfiedLinkError e) {
      System.load(FFITypeFactory.findNativeLibrary(BranchInst_cxx_0xfda3541f.class, "llvm4jni"));
    }
  }
  static {
    SIZE = _elementSize$$$();
    assert SIZE > 0;
    HASH_SHIFT = 31 - Integer.numberOfLeadingZeros(1 + SIZE);
    assert HASH_SHIFT > 0;
  }

  public BranchInst_cxx_0xfda3541f(final long address) {
    super(address);
  }

  private static final native int _elementSize$$$();

  public boolean equals(Object o) {
    if (this == o) return true;
    if (o == null || getClass() != o.getClass()) return false;
    BranchInst_cxx_0xfda3541f that = (BranchInst_cxx_0xfda3541f) o;
    return this.address == that.address;
  }

  public int hashCode() {
    return (int) (address >> HASH_SHIFT);
  }

  public String toString() {
    return toJavaString();
  }

  public Value getCondition() {
    long ret$ = nativeGetCondition(address); return com.alibaba.fastffi.llvm.LLVMTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.llvm.Value_cxx_0xd5ee89fa(ret$));
  }

  public static native long nativeGetCondition(long ptr);

  @FFINameAlias("getName")
  @CXXValue
  public StringRef getNameOriginal() {
    long ret$ = nativeGetNameOriginal(address, com.alibaba.fastffi.CXXValueScope.allocate(com.alibaba.fastffi.llvm.StringRef_cxx_0xe9c826cb.SIZE)); return (new com.alibaba.fastffi.llvm.StringRef_cxx_0xe9c826cb(ret$));
  }

  @FFINameAlias("getName")
  @CXXValue
  public static native long nativeGetNameOriginal(long ptr, long rv_base);

  public int getNumOperands() {
    return nativeGetNumOperands(address);
  }

  public static native int nativeGetNumOperands(long ptr);

  public int getNumSuccessors() {
    return nativeGetNumSuccessors(address);
  }

  public static native int nativeGetNumSuccessors(long ptr);

  public Opcode getOpcode() {
    return com.alibaba.fastffi.llvm.Opcode.getOpcode(nativeGetOpcode(address));
  }

  public static native int nativeGetOpcode(long ptr);

  public Value getOperand(int index) {
    long ret$ = nativeGetOperand(address, index); return com.alibaba.fastffi.llvm.LLVMTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.llvm.Value_cxx_0xd5ee89fa(ret$));
  }

  public static native long nativeGetOperand(long ptr, int index0);

  public BasicBlock getParent() {
    long ret$ = nativeGetParent(address); return (ret$ == 0L ? null : new com.alibaba.fastffi.llvm.BasicBlock_cxx_0x68666216(ret$));
  }

  public static native long nativeGetParent(long ptr);

  public BasicBlock getSuccessor(int index) {
    long ret$ = nativeGetSuccessor1(address, index); return (ret$ == 0L ? null : new com.alibaba.fastffi.llvm.BasicBlock_cxx_0x68666216(ret$));
  }

  public static native long nativeGetSuccessor1(long ptr, int index0);

  public Type getType() {
    long ret$ = nativeGetType(address); return com.alibaba.fastffi.llvm.LLVMTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.llvm.Type_cxx_0x69fee191(ret$));
  }

  public static native long nativeGetType(long ptr);

  @FFINameAlias("getType")
  public Type getTypeOriginal() {
    long ret$ = nativeGetTypeOriginal(address); return com.alibaba.fastffi.llvm.LLVMTypeRefiner.refine(ret$ == 0L ? null : new com.alibaba.fastffi.llvm.Type_cxx_0x69fee191(ret$));
  }

  @FFINameAlias("getType")
  public static native long nativeGetTypeOriginal(long ptr);

  public ValueTy getValueID() {
    return com.alibaba.fastffi.llvm.ValueTy.getValueTy(nativeGetValueID(address));
  }

  public static native int nativeGetValueID(long ptr);

  public boolean isConditional() {
    return nativeIsConditional(address);
  }

  public static native boolean nativeIsConditional(long ptr);

  public boolean isUnconditional() {
    return nativeIsUnconditional(address);
  }

  public static native boolean nativeIsUnconditional(long ptr);

  @FFINameAlias("use_empty")
  public boolean useEmpty() {
    return nativeUseEmpty(address);
  }

  @FFINameAlias("use_empty")
  public static native boolean nativeUseEmpty(long ptr);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy