Pupasodžio kaime, beržų apsuptyje, pasislėpęs Žilvios piliakalnis, vadinamas Pupasodžio. Manoma, kad piliakalnis buvo gerai įtvirtintas ir įėjo į lietuvių Nemuno gynybinę sistemą. Legenda pasakoja, kad dėl bailumo buvo užkeikta septyniasdešimt čia tvirtovėje buvusių kareivių, kurie Švento Jono naktį išeina ant kalno zuikiais pasivertę. Medžiotojai giriasi šovę į tuos zuikius, bet jų kulka neimanti.
Piliakalnis datuojamas I tūkst. viduriu – II tūkst. pradžia. Šlaitai statūs, 7–12 m aukščio. Šiaurės Rytų – Rytų pašlaitėse 1 ha plote yra papėdės gyvenvietė. Jos kultūriniame sluoksnyje rasta lygios, grublėtos ir žiestos keramikos.