docstr: Test code path where placeholder comes after normal op node in FX
docstr_tok: ["Test","code","path","where","placeholder","comes","after","normal","op","node","in","FX"]
code: def test_const_fold_basic_placeholder_reordered(self):
      """
      Test code path where placeholder comes after normal op node in FX
      """
  
      class ConstFoldTestModule(torch.nn.Module):
          def forward(self, x, y):
              return x * 2 + y
  
      mod = ConstFoldTestModule()
      mod = torch.fx.symbolic_trace(mod)
      yy = None
      for n in mod.graph.nodes:
          if n.op == "placeholder" and n.target == "y":
              yy = n
          elif yy is not None and n.op == "call_function":
              yy.prepend(n)
              break
  
      mod_folded: const_fold.FoldedGraphModule = (
          const_fold.split_const_subgraphs(mod)
      )
  
      self.assertTrue(mod_folded.const_subgraph_module is None)
      # Now run both folded and non-folded to check results equal.
      in_x = torch.tensor([[-0.45]])
      in_y = torch.tensor([[0.45]])
      base_result = mod(in_x, in_y)
      fold_result = mod_folded(in_x, in_y)
      self.assertTrue(torch.equal(fold_result, base_result))
  
imports: import operator
  import torch
  import torch.fx
  from torch.fx.experimental import const_fold
  from torch.fx.passes.shape_prop import _extract_tensor_metadata, ShapeProp
  from torch.testing._internal.common_utils import TestCase
label_desc: Use image node_id 5 for calling the TestConstFold obj's underlying member method code with example usage: obj.test_const_fold_basic_placeholder_reordered() and returns: unknown