Typical compilation Resources

Source: Internet
Author: User
Typical compilation resources: typical book Compilers
  1. Longshu (2nd): Compilers: Principles, techniques, and tools (2nd edition) Classic, suitable for beginners
  2. Hu Shu: Modern compiler implementation in C classic, suitable for beginners
  3. Whale book: Advanced compiler design and implementation classic. It is suitable for beginners who have a certain foundation and focus entirely on backend optimization.
  4. Crafting a compiler, especially the exercises are interesting.
    The book focuses on the front-end of compiler implementation, lexical syntax analysis, semantic analysis, and code generation. The generated code is a Polish code that can be executed by DC. It does not involve any machine-related components, code generation does not involve the backend, and code optimization does not. It is suitable for those who are interested in the front-end.
  5. Compilation Principle-exercise selection and analysis: this is a typical exercise set for compilation. The exercises and explanations are very interesting to beginners. A very thin booklet.
Architecture Problems
  1. MIPS architecture perspective (see MIPS run Linux): a detailed introduction to MIPS
    How the command system supports and runs the Linux system. This article introduces the overall structure, coprocessor, cache, exceptions and interruptions of MIPs, storage management and TLB, floating point support, MIPS assembly language, MIPS Software Porting, application binary interface, debugging interface, etc..
  2. Computer Architecture-a quantitative approach: one of the most authoritative and classic books in the field of computer architecture! By MIPS
    Compiled by the inventor of the CPU, including instruction set parallelism, multi-core technology, thread set parallelism, storage systems, pipelines, and other content related to the computer architecture.
  3. Shared storage system structure: the booklet prepared by Hu weiwu's doctoral thesis is the theoretical basis for the design of the No. 3 multi-core processor of longcore and won the national first outstanding doctoral thesis award.
Programming Languages
  1. Programming Language pragmatics
Source code of the compiler and Virtual Machine project:
  1. Gcc

    1. Founded by Richard Stallman, the most supported platforms, the most involved development companies, and the most widely used compilers.
    2. Source code: http://gcc.gnu.org/git/gcc.git git: // gcc.gnu.org/git/gcc.git
      Git + SSH: // gcc.gnu.org/git/gcc.git
    3. Online browsing: Repo. Or. cz
  2. Open64

    1. Optimized compilers jointly developed by SGI, pathscale, Emy of Sciences computing, Univ. of Del, HP, AMD, NVIDIA, and other companies.
    2. Source code: http://svn.open64.net/listing.php? Repname = open64 & Path =/& Rev = 0
  3. Llvm

    1. A complete set of tool chains, including front-end, back-end, virtual machine, and debugging, developed by Apple
  4. Jikes rvm

    1. Virtual machines initiated by IBM for research.
  5. Binutils

    1. Source code: http://sourceware.org/cgi-bin/cvsweb.cgi/src? Cvsroot = SRC
Algorithm Learning Resource:
  • MIT
    December 6.046-CLRS

    • Netease open course translation Edition
    • The most typical computer science course at MIT, with the author of "Introduction to algorithms. This course includes related classroom videos and homework, so that you can learn this course by yourself.
  • The Traveling Salesman Problem, TSP)

    • A topic page of Georgia Tech University that describes resources related to TSP. It includes various variants related to the actual carrier issues, and the historical application of the carrier issues in reality. The solution to the typical logtail problem and the best record at present.
Programming Language, compiler, architecture research groups around the world:
  • Saarland University, German

    • Prof. Sebastian hack's group
    • Prof. dr. Dr. h. c. mult. Reinhard Wilhelm's group
  • Universal Parallel Computing Research Center (upcrc) @ uiuc

    • Her seminars
  • Advanced compiler Technologies @ IBM

    • Uday Kumar bondhugula, Tong
      Chen, yaoqing Gao, Alexander re
      E. Eichenberger, lakshminarayanan (Lakshmi) renganarayana, Zehra
      Sura
  • Http://www.agner.org/

    • Optimization Based on x86 CPUs by agner fog
  • Chen Ding @ Univ. of Rochester
  • Titanium Project @ UC. Berkeley

    • Keyword: Java, HPC, parallel
  • Habanero Project @ Rice University

    • Keyword: Java, C ++, concurrent collection, x10, parallel
Compiler courses in Universitys:
  • Cs526: Advanced Compiler Construction

    • INSTRUCTOR: Vikram adve (uiuc)
    • Keyword: control flow analysis, SSA, Global Value numbering, global dataflow analysis, partial Redundancy Elimination, data dependence, Pointer Analysis, interprocedual compilation, llvm
  • CMU-15-411 compiler design

    • Covers the design and implementation of compiler and runtime system for high level languages.
  • MIT
    6.172-performance engineering of software systems

    • A course on how to optimize performance is recommended for those who have a certain background in computer systems. Including architecture, memory access optimization, compilation optimization, performance evaluation, dynamic storage allocation, multi-core and multi-thread programming, synchronization, non-deterministic programming, etc, various aspects may be involved.
  • Stand. u cs 243-Program Analysis and Optimization

    • An article about program analysis and optimization, taught by Monica Lam, one of the three authors of longshu. The content involves core content in compilation technologies such as data stream analysis, Partial redundancy deletion, register allocation, scheduling, dynamic compilation, Pointer Analysis, cyclic parallelization, and garbage collection.
  • Sun Yat-sen University-compilation principles

    • On this page, we recommend that you use a comprehensive range of compiler, programming language, and program analysis optimization materials summarized by Professor Li Wenjun of Sun Yat-sen University.
Compiler jobs:
  • Compilerjobs.com

    • Latest worldwide compiler positions
  • Compiler engineer jobs @ simplyhired.com

    • All positions are get from the official website and other related website
Linux operating system:
  • Linux Kernel mongoman test project
  • Linux cross reference

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.