The thing inside of us that makes us go up is our attitude.

Thoughts and learnings

Random Image

Who's Online

We have 53 guests online

Statistics

Members : 2
Content : 182
Web Links : 6
Content View Hits : 191381



Thoughts and learnings (Technical)



How compiler tool chain handles symbols defined globally? PDF Print E-mail
Written by Chandra Kumar R   

What if the symbol 'g_Var' is declared globally in files file01.c and file02.c?

Yes, the compiler tool chain (that would include the compiler, assembler and the linker) would compile successfully. And on execution, the result would be "Passed".

A further read on this article is required only if you wonder "why didn't the compiler tool chain shout for multiple definition of symbol 'gVar' during linking?"

Read more...
 
Testsuite for gcc-2.95.3 PDF Print E-mail
Written by Chandra Kumar R   

I was supposed to run the gcc testsuite for verifying the gnu toolchain we are maintaining. The gcc version we use is a very old one (gcc-2.95.3). To my surprise, I found that the testsuite folder of gcc-2.95.3 is empty. I checked the previous versions of gcc-2.95.3 (gcc-2.9.2, gcc-2.9.2.1) also. Those versions has a folder for testsuite under gcc-2.95.x.x/gcc. But there is no test files within it.

On surfing, I found that during the time of gcc-2.95, testsuites weren't part of the release.

Read more...
 
A study on genericizer in GCC PDF Print E-mail
Written by Chandra Kumar R   

The need for genericizer in GCC depends on how well GENERIC can be made to match up with the source language that is supported in GCC front-end.

I.e. In GCC, if the parser for a language uses GENERIC as intermediate language representation, then a genericizer is not required. If the language parser uses any other intermediate language representation, then a genericizer is required to convert that intermediate language representation to GENERIC.

Read more...
 
Dhrystone and Whetstone PDF Print E-mail
Written by Chandra Kumar R   

Dhrystone and whetstone are open source synthetic benchmark programs. These benchmarks are used in the following cases:

  • to measure and compare the performance of two different processors
  • to measure the performance of compilers for a processor

Benchmark is the standard based on which the performance is measured.

Read more...
 
Internationalization of glibc PDF Print E-mail
Written by Chandra Kumar R   

Internationalization of a software refers to the process of making that software to adapt the user's favorite conventions. So internationalization of glibc means programming glibc to adapt the user's favorite conventions.

In glibc, internationalization is done using locales. Locales are collection of conventions. Locales should be specified via environment variables. There are standard locales such as 'C' and 'POSIX' that are supported by all operating systems (OS).

Read more...
 
Vectorization in GCC PDF Print E-mail
Written by Chandra Kumar R   

Vectorization or SIMDization (here-in-after referred as Vectorization only) is the process of making a program to use the SIMD instructions of a processor.

SIMD expands to Single Instruction Multiple Data. Processor that supports SIMD instructions would be capable of performing a single operation on multiple data (i.e. vector data).

GCC performs loop-based vectorization.

Read more...
 
<< Start < Prev 1 2 3 Next > End >>

Page 1 of 3