I suggest that at 9 and autistic he still isn't able to understand the difference between truth and fantasy as well as you think. Autistic kids develop at a slower pace. Of course he lied, you asked him if he did and he wished that he hadn't. He didn't want to get in trouble. He told you his fantasy.
The difference between lies and truth is a difficult, higher learning concept. His brain is still developing. I suggest it's much better to not set him up for lying. Tell him you found the box under his bed and you know he ate the donuts. No need to question him. You know. Then give him a consequence. The real issue is his taking the donuts. You don't need to add the complication of a lie to it.
By not asking you are giving a more clear message about the truth and lies. You tell the truth to him so that he can see what it looks like.
Keep in mind that he's still learning about the truth. At this age children can still have an active fantasy life. They have difficulty knowing the difference between what they want it to be and what is actual. Teaching, rather than punishment is the way to go. And setting them up for success beats failure all the way.
I handle lies by saying something like you wish that such was true? And then spend some time talking about what the child wishes before emphasizing what is real. Let the child understand that you sympathize with their wishes while also providing an example of the truth and why it's important.