Literal pool

Literal pool

In computer science, and specifically in compiler and assembler design, a literal pool is a lookup table used to hold literals during assembly and execution.

Multiple (local) literal pools are typically used only for computer architectures that lack branch instructions for long jumps, or have a set of instructions optimized for shorter jumps. Examples of such architectures include ARM architecture and the IBM System/360 and later architectures, which had a number of instructions which took 12-bit address offsets. In this case, the compiler would create a literal table on every 4K page; any branches whose target was less than 4K bytes away could be taken immediately; longer branches required an address lookup via the literal table. The entries in the literal pool are placed into the object relocation table during assembly, and are then resolved at link edit time.

In certain ways, a literal pool resembles a TOC or a global offset table (GOT), except that the implementation is considerably simpler, and there may be multiple literal tables per object.


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • Dream Pool Essays — Shen Kuo (沈括) (1031 1095 AD) The Dream Pool Essays (Pinyin: Méng Xī Bǐ Tán; Wade Giles: Meng Hsi Pi t an Chinese: 夢溪筆談/梦溪笔谈) was an extensive book written by the polymath Chinese scientist and statesman Shen Kuo (1031 1095) by 1088 AD, during the …   Wikipedia

  • evolution — evolutional, adj. evolutionally, adv. /ev euh looh sheuhn/ or, esp. Brit., /ee veuh /, n. 1. any process of formation or growth; development: the evolution of a language; the evolution of the airplane. 2. a product of such development; something… …   Universalium

  • biblical literature — Introduction       four bodies of written works: the Old Testament writings according to the Hebrew canon; intertestamental works, including the Old Testament Apocrypha; the New Testament writings; and the New Testament Apocrypha.       The Old… …   Universalium

  • JERUSALEM — The entry is arranged according to the following outline: history name protohistory the bronze age david and first temple period second temple period the roman period byzantine jerusalem arab period crusader period mamluk period …   Encyclopedia of Judaism

  • Java class file — This article is about the data format. For classes in Java, see Class (computer programming). Class Filename extension .class Developed by Sun Microsystems Type of format Bytecode In the Java programming language, source files (.java files) are… …   Wikipedia

  • IPv6 address — An Internet Protocol Version 6 address (IPv6 address) is a numerical label that is used to identify a network interface of a computer or other network node participating in an IPv6 enabled computer network. IP addresses serve the purpose of… …   Wikipedia

  • C++0x — is the planned new standard for the C++ programming language. It is intended to replace the existing C++ standard, ISO/IEC 14882, which was published in 1998 and updated in 2003. These predecessors are informally known as C++98 and C++03. The new …   Wikipedia

  • C++11 — C++11, also formerly known as C++0x,[1] is the name of the most recent iteration of the C++ programming language, replacing C++TR1, approved by the ISO as of 12 August 2011.[2] The name is derived from the tradition of naming language versions by …   Wikipedia

  • ABAP — Infobox programming language name = ABAP/4 logo = paradigm = Object oriented, structured, imperative year = 1980s designer = SAP AG typing = Static, strong, safe, nominative implementations = SAP R/2,SAP R/3 dialects = influenced by = Objective C …   Wikipedia

  • Smalltalk — This article is about the programming language. For other uses, see Small talk (disambiguation). Smalltalk Smalltalk 80: The Language and its Implementation, a.k.a. the Blue book , a seminal book on the language Paradigm(s) object oriented… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”