Hi Arpan,
I found this interesting issue in binutils v2.38. The following code works perfectly fine in ubuntuĀ 20.04 (binutils v2.34)
I could not reproduce this failure. That is when I compiled, assembled and linked your test program using binutils 2.38 tools, the resulting executable ran correctly. I was however using Fedora rather than Ubuntu, so possibly the problem is related to any Ubuntu specific changes that have been made to the binutils sources. Also when switching from Ubunti 20.04 to 22.04 it is likely that the version of gcc has changed as well. So possibly the problem is with gcc rather than the binutils. I suggest that you report the problem using the Ubuntu bug tracking system. They should be able to give you a more detailed answer. Cheers Nick