A compile-time optimization framework for Ada rendezvous

Rendezvous is the basic synchronous communication mechanism used by tasks, which causes tasks blocked under some circumstances. Holding the semantics of the rendezvous, this paper uses semaphores to transform the entry call and accept statement pairs and makes tasks execute some statements during the blocked time because of waiting for the beginning or end of a rendezvous. Therefore, the parallelism between the client and the server is improved.