code: def test_paddle_softmax_with_cross_entropy(
      dtype_and_x_and_axis,
      soft_label,
      numeric_stable_mode,
      return_softmax,
      on_device,
      fn_tree,
      backend_fw,
      frontend,
      test_flags,
  ):
      x_dtype, x, axis = dtype_and_x_and_axis
      logits = x[0]
      labels = x[1]
      label_dtype = x_dtype
      ignore_index = 0
      if soft_label:
          labels = labels / ivy.sum(labels).to_native()
      else:
          labels = ivy.argmax(labels, axis=axis).to_native()
          flattened_labels = labels.flatten()
          ignore_index = ivy.randint(0, flattened_labels.size)
          ignore_index = flattened_labels[ignore_index]
          label_dtype = [str(labels.dtype)]
      if on_device == "cpu" or soft_label:
          numeric_stable_mode = True
      helpers.test_frontend_function(
          input_dtypes=[x_dtype[0], label_dtype[0]],
          frontend=frontend,
          backend_to_test=backend_fw,
          test_flags=test_flags,
          fn_tree=fn_tree,
          on_device=on_device,
          logits=logits,
          label=labels,
          soft_label=soft_label,
          ignore_index=ignore_index,
          numeric_stable_mode=numeric_stable_mode,
          return_softmax=return_softmax,
          axis=axis,
      )
  
imports: from hypothesis import strategies
  import ivy
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import handle_frontend_test
label_desc: Use image node_id 16 for calling a global function with example usage: test_paddle_softmax_with_cross_entropy(dtype_and_x_and_axis, soft_label, numeric_stable_mode, return_softmax, on_device, fn_tree, backend_fw, frontend, test_flags) without return types