Repository: pytorch
Issue: [inductor] [dtype] `ReplicationPad` raise dtype error on eager but pass the check on indcutor
Labels: triaged,oncall: pt2,module: inductor

### 🐛 Describe the bug

**symptom**: when using a normal input to this model, `signbit` output a `bool` value.  `replication_pad` rejects bool on eager but pass the check on inductor. I'm not sure which one should be taken.

**device**: both on cpu and cuda

**exposed area**: ReplicationPad1d, ReplicationPad2d, ReplicationPad3d

**relation**: similarly logic to #143752

**code**
```python
import torch
import torch.nn as nn
import torch.nn.functional as F

torch.manual_seed(0)
torch.set_grad_enabled(False)
from torch._inductor import config

config.fallback_random = True


class Model(nn.Module):

    def __init__(self, pad_operator):
        super(Model, self).__init__()
        self.pad = pad_operator
        self.signbit = torch.signbit

    def forward(self, x):
        x = self.signbit(x)
        x = self.pad(x)
        return x


def run_test(dim, device, backend):
    r_pad = eval(f"nn.ReplicationPad{dim}d(padding=1)")
    model = Model(r_pad).to(device)
    x = torch.randn([1] * (dim + 2)).to(device)

    if backend == "inductor":
        model = torch.compile(model)

    try:
        y = model(x)
        print(f"succeed on {device} with {backend}: {y.dtype}")
    except Exception as e:
        print(f"fail on {device} with {backend}: {e}")


run_test(1, "cpu", "eager")  # fail on cpu with eager: "replication_pad1d" not implemented for 'Bool'
run_test(1, "cpu", "inductor")  # succeed on cpu with inductor: torch.bool
run_test(1, "cuda", "eager")  # fail on cuda with eager: "replication_pad1d_cuda" not implemented for 'Bool'
run_test(1, "cuda", "inductor")  # succeed on cuda with inductor: torch.bool

run_test(2, "cpu", "eager")  # fail on cpu with eager: "replication_pad2d" not implemented for 'Bool'
run_test(2, "cpu", "inductor")  # succeed on cpu with inductor: torch.bool
run_test(2, "cuda", "eager")  # fail on cuda with eager: "replication_pad2d_cuda" not implemented for 'Bool'
run_test(2, "cuda", "inductor")  # succeed on cuda with inductor: torch.bool

run_test(3, "cpu", "eager")  # fail on cpu with eager: "replication_pad3d" not implemented for 'Bool'
run_test(3, "cpu", "inductor")  # succeed on cpu with inductor: torch.bool
run_test(3, "cuda", "eager")  # fail on cuda with eager: "replication_pad3d_cuda" not implemented for 'Bool'
run_test(3, "cuda", "inductor")  # succeed on cuda with inductor: torch.bool

```

### Error logs

```
fail on cpu with eager: "replication_pad1d" not implemented for 'Bool'
succeed on cpu with inductor: torch.bool
fail on cuda with eager: "replication_pad1d_cuda" not implemented for 'Bool'
succeed on cuda with inductor: torch.bool
fail on cpu with eager: "replication_pad2d" not implemented for 'Bool'
succeed on cpu with inductor: torch.bool
fail on cuda with eager: "replication_pad2d_cuda" not implemented for 'Bool'
succeed on cuda with inductor: torch.bool
fail on cpu with eager: "replication_pad3d" not implemented for 'Bool'
succeed on cpu with inductor: torch.bool
fail on cuda with eager: "replication_pad3d_cuda" not implemented for 'Bool'
succeed on cuda with inductor: torch.bool
```

### Versions

the same as #143752

cc @chauhang @penguinwu @voznesenskym @EikanWang @jgong5 @Guobing-Chen @XiaobingSuper @zhuhaozhe @blzheng @wenzhe-nrv @jiayisunx @ipiszy @yf225 @chenyang78 @kadeng @muchulee8 @ColinPeppler @amjames @desertfire @aakhundov