code: def test_external_calls(self):
      dtype = torch.float32
  
      A = te.BufHandle("A", [1, 4], dtype)
      B = te.BufHandle("B", [4, 1], dtype)
      C = te.BufHandle("C", [1, 1], dtype)
  
      s = te.ExternalCall(C, "nnc_aten_matmul", [A, B], [])
  
      loopnest = te.LoopNest(s, [C])
      loopnest.prepare_for_codegen()
      codegen = te.construct_codegen("ir_eval", s, [A, B, C])
  
      tA = torch.ones(1, 4)
      tB = torch.ones(4, 1)
      tC = torch.empty(1, 1)
      codegen.call([tA, tB, tC])
      torch.testing.assert_close(torch.matmul(tA, tB), tC)
  
imports: import torch
  import numpy
  import torch._C._te
  from torch.testing._internal.common_utils import run_tests
  from torch.testing._internal.jit_utils import JitTestCase
  import unittest
label_desc: Use image node_id 3 for calling the TestTensorExprPyBind obj's underlying member method code with example usage: obj.test_external_calls() without return types