|
Wipro has developed comprehensive expertise in
compiler and programming development tools, based
on the projects executed for the customers.
Compiler development
 |
Wipro has developed
an ANSI C cross compiler for a supercomputer
vendor. We were responsible for the complete
product development including the documentation. |
 |
Wipro
teams undertake enhancements and sustenance
of C & C++ compilers and development tools
for various multiprocessor server vendors.
This is a derivative of the longstanding outsourced
maintenance/development partnerships between
Wipro and almost all of the major Server/Operating
Systems vendors. |
 |
Wipro undertook
the porting of Java Development Kit (JDK)
1.3 onto a proprietary operating system for
a high-performance servers vendor. Wipro is
also porting Just in time Compiler (JIT) onto
to the same Operating System for the same
vendor. |
 |
Wipro team
undertook the enhancements and sustenance
of Pascal compiler for a telecom vendor. |
 |
Wipro has
developed a compiler that converts an intermediate
form of SQL to a SPARC V9 binary. This compiler
executes when a user initiates a query and
hence the compiler has to generate compact
code with minimum compilation overheads. The
phases involved are optimized code generation
in symbolic form, register allocation, delay
slot filling, assembly & disassembly.
We have also implemented an instruction scheduler
though it is yet to be integrated into the
compiler. |
Run-time loader
 |
Implementation
of run-time dynamic loader for a real time
UNIX operating system. |
 |
Enhancements
to RTLD to support multi-threaded applications
(on a multiprocessor platform) and to guard
against asynchronous signals. |
OFL functionality for
Link editor
 |
Ordering for
Locality (OFL) functionality was added to
the link editor, /bin/ld, to ensure frequently
referenced functions are located in the same
memory page as the calling function. This
will higher performance by reducing the page
faults. |
ABI/API support for ELF
Wipro developed complete ELF library and enhanced
the real time UNIX operating system for executing
ELF binaries. Some of the tasks done include:
 |
Complete development
of ELF library |
 |
Complete
development of run-time loader |
 |
Enhancements
to various compiler related tools (viz., ar,
as, dis, ld, nm, strip etc.) to support ELF
in addition to COFF and a.out. |
Disassembler
 |
We have recently
implemented a SPARC disassembler on Solaris. |
Intel FPU stack emulation
 |
The Intel FPU
stack & operations on the same were emulated
on the SPARC V9 processor in software. The
issues were with respect to emulating the
essential functionality without the software
being too bulky. Much of this emulation is
inlined into code by the compiler. |
|