From e797cab50f4633cbd78a5a7963dadc21ae8739e1 Mon Sep 17 00:00:00 2001 From: Sofia Date: Tue, 14 Apr 2026 14:49:07 +0300 Subject: [PATCH] Remove some unused code --- src/types.cpp | 61 --------------------------------------------------- src/types.h | 8 ------- 2 files changed, 69 deletions(-) diff --git a/src/types.cpp b/src/types.cpp index adc95dd..1e0d19f 100644 --- a/src/types.cpp +++ b/src/types.cpp @@ -54,23 +54,6 @@ namespace types { } } - - llvm::Value* Type::add(codegen::Builder&, llvm::Value*, llvm::Value*) { - throw std::runtime_error("Invalid operation for this type"); - } - - llvm::Value* Type::sub(codegen::Builder&, llvm::Value*, llvm::Value*) { - throw std::runtime_error("Invalid operation for this type"); - } - - llvm::Value* Type::lt(codegen::Builder&, llvm::Value*, llvm::Value*) { - throw std::runtime_error("Invalid operation for this type"); - } - - llvm::Value* Type::gt(codegen::Builder&, llvm::Value*, llvm::Value*) { - throw std::runtime_error("Invalid operation for this type"); - } - std::optional> Type::return_type() { return {}; } @@ -84,50 +67,6 @@ namespace types { return std::pair(ptr, self); } - llvm::Value* FundamentalType::add(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) { - switch (this->m_ty) { - case FundamentalTypeKind::Int: - case FundamentalTypeKind::Bool: - case FundamentalTypeKind::Char: - return builder.builder->CreateAdd(lhs, rhs, "add"); - default: - throw std::runtime_error("Invalid type for add"); - } - } - - llvm::Value* FundamentalType::sub(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) { - switch (this->m_ty) { - case FundamentalTypeKind::Int: - case FundamentalTypeKind::Bool: - case FundamentalTypeKind::Char: - return builder.builder->CreateSub(lhs, rhs, "sub"); - default: - throw std::runtime_error("Invalid type"); - } - } - - llvm::Value* FundamentalType::lt(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) { - switch (this->m_ty) { - case FundamentalTypeKind::Int: - case FundamentalTypeKind::Bool: - case FundamentalTypeKind::Char: - return builder.builder->CreateCmp(llvm::CmpInst::Predicate::ICMP_SLT, lhs, rhs, "cmp"); - default: - throw std::runtime_error("Invalid type"); - } - } - - llvm::Value* FundamentalType::gt(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) { - switch (this->m_ty) { - case FundamentalTypeKind::Int: - case FundamentalTypeKind::Bool: - case FundamentalTypeKind::Char: - return builder.builder->CreateCmp(llvm::CmpInst::Predicate::ICMP_SGT, lhs, rhs); - default: - throw std::runtime_error("Invalid type"); - } - } - bool FundamentalType::is_signed() { switch (this->m_ty) { case FundamentalTypeKind::Int: diff --git a/src/types.h b/src/types.h index 8cc7d41..3090ff9 100644 --- a/src/types.h +++ b/src/types.h @@ -31,10 +31,6 @@ namespace types { virtual llvm::Type* codegen(codegen::Builder& builder) = 0; virtual std::pair> load(codegen::Builder& builder, llvm::Value* ptr) = 0; virtual std::optional> return_type(); - virtual llvm::Value* add(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs); - virtual llvm::Value* sub(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs); - virtual llvm::Value* lt(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs); - virtual llvm::Value* gt(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs); virtual bool is_signed(); virtual uint32_t size() = 0; }; @@ -47,10 +43,6 @@ namespace types { virtual std::string formatted() override; virtual llvm::Type* codegen(codegen::Builder& builder) override; virtual std::pair> load(codegen::Builder& builder, llvm::Value* ptr) override; - virtual llvm::Value* add(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) override; - virtual llvm::Value* sub(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) override; - virtual llvm::Value* lt(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) override; - virtual llvm::Value* gt(codegen::Builder& builder, llvm::Value* lhs, llvm::Value* rhs) override; virtual bool is_signed() override; virtual uint32_t size() override; };