As demonstrated above, TIE extensions can improve the execution speed of an application running on an Xtensa processor by enabling the creation of instructions that each perform the work of multiple general-purpose instructions. Several different techniques can be used to combine multiple general-purpose operations into one instruction. Three common techniques available through TIE are:
To illustrate these three techniques, consider a simple example where profiling indicates that most of an application’s execution time is spent computing the average of two arrays in the following loop:
unsigned short *a, *b, *c; ... for (i=0; i<n; i++) c[i] = (a[i] + b[i]) >> ...