Tom Hardy cannot fathom why he wasn't offered big action roles when he was younger.

The Revenant star is currently on the promotional trail for Sony comic book adaptation Venom, in which he plays a journalist named Eddie Brock who becomes the human host of an alien life form known as a symbiote.

In a cover interview with Esquire magazine, he admitted he “got battered for four months” on the shoot, and is currently nursing a torn meniscus in his knee, which he has yet to get fixed. He questioned why such roles are being offered to him now he's 40, when he would have been better equipped for them a decade ago.

“By the time you’re 40 you get harder action heroes,” he said. “I’m absolutely broken now! Why didn’t you give me this 10 years ago?”

Tom believes he began receiving all these offers following his portrayal of notorious criminal Charles Bronson in 2008 movie Bronson.

“Once the Americans saw me in Bronson, they said, ‘Oh? You kick heads in? Oh, you’re a violent guy? We’ll take you!’" he explained, admitting that the hardman act is nothing like him in real life.

"Little do they know that I’m not a violent guy, I’m emotionally very sensitive — hee! — and quite vulnerable! But I pretended," he joked. "But my difficulties probably manifested from the fact that I am sensitive. And trying to explain that brittle, slightly feminine quality that I have, because there’s a physicality about me that is masculine, and then also I’m quite b**chy…”

Despite his sensitive nature, the actor has gone on to portray tough men in films such as The Dark Knight Rises, Legend, Warrior and Mad Max: Fury Road.

Besides Venom, Tom has also completed filming Fonzo, in which he portrays notorious gangster Al Capone in the last few months of his life.

He has plenty of projects on the horizon including the next instalment of Mad Max, another season of TV show Taboo, and potentially more Venom films.

“Studios always sign you up for the rest of your life, and rightly so, but it’s all dependent on success," he cryptically added.

Venom is set to hit cinemas from October (18).