diff --git a/bindings/go/llvm/irreader.go b/bindings/go/llvm/irreader.go
deleted file mode 100644
index 7106449..0000000
--- a/bindings/go/llvm/irreader.go
+++ /dev/null
@@ -1,37 +0,0 @@
-//===- irreader.go - Bindings for irreader --------------------------------===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-//
-// This file defines bindings for the irreader component.
-//
-//===----------------------------------------------------------------------===//
-
-package llvm
-
-/*
-#include "llvm-c/IRReader.h"
-#include <stdlib.h>
-*/
-import "C"
-
-import (
-	"errors"
-	"unsafe"
-)
-
-// ParseIR parses the textual IR given in the memory buffer and returns a new
-// LLVM module in this context.
-func (c *Context) ParseIR(buf MemoryBuffer) (Module, error) {
-	var m Module
-	var errmsg *C.char
-	if C.LLVMParseIRInContext(c.C, buf.C, &m.C, &errmsg) != 0 {
-		err := errors.New(C.GoString(errmsg))
-		C.free(unsafe.Pointer(errmsg))
-		return Module{}, err
-	}
-	return m, nil
-}
