SCOUG Logo


Next Meeting: Sat, TBD
Meeting Directions


Be a Member
Join SCOUG

Navigation:


Help with Searching

20 Most Recent Documents
Search Archives
Index by date, title, author, category.


Features:

Mr. Know-It-All
Ink
Download!










SCOUG:

Home

Email Lists

SIGs (Internet, General Interest, Programming, Network, more..)

Online Chats

Business

Past Presentations

Credits

Submissions

Contact SCOUG

Copyright SCOUG



warp expowest
Pictures from Sept. 1999

The views expressed in articles on this site are those of their authors.

warptech
SCOUG was there!


Copyright 1998-2024, Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.

The Southern California OS/2 User Group
USA

SCOUG-Programming Mailing List Archives

Return to [ 20 | May | 2005 ]


Date: Fri, 20 May 2005 23:48:22 PDT7
From: "Gregory W. Smith" <gsmith@well.com >
Reply-To: scoug-programming@scoug.com
To: scoug-programming@scoug.com
Subject: SCOUG-Programming: Some Information on GCC 4.0

Content Type: text/plain

The May issue of Linux Format had an article on GCC 4.0, so I can now
correct some of the bogus information that I posted earlier. The flow
diagram showing how LEX and YACC go together to make the language front
end (PL11.exe) still stands. However, I goofed when I said that the
PL11.exe front end produces RTL as the compiled output from the input
PL/I program. Actually, the output from the language processor is an
"Abstract Syntax Tree" (AST). The AST then goes into the next pass of
the compiler which then outputs the register transfer language (RTL).
The RTL then goes on to the back end which converts it to code for the
specific processor, e.g., i386, PowerPC, ARM, M68K, Alpha, VAX, S\390,
etc.

According to the article, some development has concentrated on the
pass that converts the AST's to RTL. As it turns out, the AST's
generated by each front end differ. So the f771.exe front end produces
an AST that has some FORTRAN-isms. The java1.exe front end produces
an AST that has Java constructs, The c++1.exe front end produces an
AST that has C++ quirks to deal with.

RTL is not well suited to high-level optimizations, so the language
front ends have had to do the optimizations in the 3.x versions. One
effort in the current 4.0 compiler has been to 1) take the AST's and
clean them of language quirks to produce a common generic AST, then
2) apply a tree-SSA transformation to the generic AST. (SSA==Single,
Static Assignmnent transformation) The SSA transformed generic
abstract syntax tree, can then be optimized prior to the generation
of the RTL.
--
Gregory W. Smith (WD9GAY) gsmith@well.com

=====================================================

To unsubscribe from this list, send an email message
to "steward@scoug.com". In the body of the message,
put the command "unsubscribe scoug-programming".

For problems, contact the list owner at
"postmaster@scoug.com".

=====================================================


Return to [ 20 | May | 2005 ]



The Southern California OS/2 User Group
P.O. Box 26904
Santa Ana, CA 92799-6904, USA

Copyright 2001 the Southern California OS/2 User Group. ALL RIGHTS RESERVED.

SCOUG, Warp Expo West, and Warpfest are trademarks of the Southern California OS/2 User Group. OS/2, Workplace Shell, and IBM are registered trademarks of International Business Machines Corporation. All other trademarks remain the property of their respective owners.