<commit_before>#ifndef RBX_LLVM_JIT_OPERATIONS
#define RBX_LLVM_JIT_OPERATIONS

#include "builtin/class.hpp"
#include "builtin/fixnum.hpp"
#include "builtin/symbol.hpp"
#include "builtin/tuple.hpp"
#include "inline_cache.hpp"

#include "llvm/offset.hpp"

#include "llvm/inline_policy.hpp"

#include <llvm/Value.h>
#include <llvm/BasicBlock.h>
#include <llvm/Function.h>

using namespace llvm;

namespace rubinius {
  class JITOperations {
    llvm::Value* stack_top_;

  protected:
    VMMethod* vmm_;
    LLVMState* ls_;
    llvm::BasicBlock* block_;

    llvm::Module* module_;
    llvm::Function* function_;

    llvm::Value* vm_;
    llvm::Value* call_frame_;

    llvm::Value* zero_;
    llvm::Value* one_;

    InlinePolicy* inline_policy_;
    bool own_policy_;

  public:
    const llvm::Type* NativeIntTy;
    const llvm::Type* FixnumTy;
    const llvm::Type* IntPtrTy;
    const llvm::Type* ObjType;
    const llvm::Type* ObjArrayTy;
    const llvm::Type* Int31Ty;

    // Frequently used types
    const llvm::Type* VMTy;
    const llvm::Type* CallFrameTy;

    // Commonly used constants
    llvm::Value* Zero;
    llvm::Value* One;

  public:
    JITOperations(LLVMState* ls, VMMethod* vmm, llvm::Module* mod,
                  llvm::Value* top, llvm::Value* call_frame,
                  llvm::BasicBlock* start, llvm::Function* func)
      : stack_top_(top)
      , vmm_(vmm)
      , ls_(ls)
      , block_(start)
      , module_(mod)
      , function_(func)
      , call_frame_(call_frame)
      , inline_policy_(0)
      , own_policy_(false)
    {
      zero_ = ConstantInt::get(Type::Int32Ty, 0);
      one_ =  ConstantInt::get(Type::Int32Ty, 1);

#if __LP64__
      IntPtrTy = llvm::Type::Int64Ty;
      FixnumTy = llvvm::IntegerType::get(63);
#else
      IntPtrTy = llvm::Type::Int32Ty;
      FixnumTy = llvm::IntegerType::get(31);
#endif

      NativeIntTy = IntPtrTy;

      One = ConstantInt::get(NativeIntTy, 1);
      Zero = ConstantInt::get(NativeIntTy, 0);

      ObjType = ptr_type("Object");
      ObjArrayTy = PointerType::getUnqual(ObjType);

      Int31Ty = llvm::IntegerType::get(31);

      VMTy = ptr_type("VM");<commit_msg>Fixed typo in 64-bit code path<commit_after>#ifndef RBX_LLVM_JIT_OPERATIONS
#define RBX_LLVM_JIT_OPERATIONS

#include "builtin/class.hpp"
#include "builtin/fixnum.hpp"
#include "builtin/symbol.hpp"
#include "builtin/tuple.hpp"
#include "inline_cache.hpp"

#include "llvm/offset.hpp"

#include "llvm/inline_policy.hpp"

#include <llvm/Value.h>
#include <llvm/BasicBlock.h>
#include <llvm/Function.h>

using namespace llvm;

namespace rubinius {
  class JITOperations {
    llvm::Value* stack_top_;

  protected:
    VMMethod* vmm_;
    LLVMState* ls_;
    llvm::BasicBlock* block_;

    llvm::Module* module_;
    llvm::Function* function_;

    llvm::Value* vm_;
    llvm::Value* call_frame_;

    llvm::Value* zero_;
    llvm::Value* one_;

    InlinePolicy* inline_policy_;
    bool own_policy_;

  public:
    const llvm::Type* NativeIntTy;
    const llvm::Type* FixnumTy;
    const llvm::Type* IntPtrTy;
    const llvm::Type* ObjType;
    const llvm::Type* ObjArrayTy;
    const llvm::Type* Int31Ty;

    // Frequently used types
    const llvm::Type* VMTy;
    const llvm::Type* CallFrameTy;

    // Commonly used constants
    llvm::Value* Zero;
    llvm::Value* One;

  public:
    JITOperations(LLVMState* ls, VMMethod* vmm, llvm::Module* mod,
                  llvm::Value* top, llvm::Value* call_frame,
                  llvm::BasicBlock* start, llvm::Function* func)
      : stack_top_(top)
      , vmm_(vmm)
      , ls_(ls)
      , block_(start)
      , module_(mod)
      , function_(func)
      , call_frame_(call_frame)
      , inline_policy_(0)
      , own_policy_(false)
    {
      zero_ = ConstantInt::get(Type::Int32Ty, 0);
      one_ =  ConstantInt::get(Type::Int32Ty, 1);

#if __LP64__
      IntPtrTy = llvm::Type::Int64Ty;
      FixnumTy = llvm::IntegerType::get(63);
#else
      IntPtrTy = llvm::Type::Int32Ty;
      FixnumTy = llvm::IntegerType::get(31);
#endif

      NativeIntTy = IntPtrTy;

      One = ConstantInt::get(NativeIntTy, 1);
      Zero = ConstantInt::get(NativeIntTy, 0);

      ObjType = ptr_type("Object");
      ObjArrayTy = PointerType::getUnqual(ObjType);

      Int31Ty = llvm::IntegerType::get(31);

      VMTy = ptr_type("VM");
{'fraction_non_alphanumeric': 0.1326718966312875, 'fraction_numerical': 0.011998154130133826, 'mean_word_length': 3.304865938430983, 'pattern_counts': {'":': 0, '<': 9, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '487919', 'n_tokens_mistral': 1557, 'n_tokens_neox': 1519, 'n_words': 302}