diff --git a/docs/CodeGenerator.html b/docs/CodeGenerator.html index 5ace87e3340..e77b97048f8 100644 --- a/docs/CodeGenerator.html +++ b/docs/CodeGenerator.html @@ -2,6 +2,7 @@ "http://www.w3.org/TR/html4/strict.dtd">
+More to come...
- - @@ -1307,10 +1304,10 @@ this code can be used:-bool RegMapping_Fer::compatible_class(MachineFunction &mf, +bool RegMapping_Fer::compatible_class(MachineFunction &mf, unsigned v_reg, unsigned p_reg) { - assert(MRegisterInfo::isPhysicalRegister(p_reg) && + assert(MRegisterInfo::isPhysicalRegister(p_reg) && "Target register must be physical"); const TargetRegisterClass *trc = mf.getSSARegMap()->getRegClass(v_reg); return trc->contains(p_reg); @@ -1753,11 +1750,11 @@ relative (PIC) or static addressing for accessing global values, so no TOC (r2) is used. Second, r31 is used as a frame pointer to allow dynamic growth of a stack frame. LLVM takes advantage of having no TOC to provide space to save the frame pointer in the PowerPC linkage area of the caller frame. Other -details of PowerPC ABI can be found at PowerPC ABI. Note: -This link describes the 32 bit ABI. The 64 bit ABI is similar except space for -GPRs are 8 bytes wide (not 4) and r13 is reserved for system use. +details of PowerPC ABI can be found at PowerPC ABI. Note: This link describes the 32 bit ABI. The +64 bit ABI is similar except space for GPRs are 8 bytes wide (not 4) and r13 is +reserved for system use.
The size of a PowerPC frame is usually fixed for the duration of a -function's invocation. Since the frame is fixed size, all references into +function’s invocation. Since the frame is fixed size, all references into the frame can be accessed via fixed offsets from the stack pointer. The exception to this is when dynamic alloca or variable sized arrays are present, then a base pointer (r31) is used as a proxy for the stack pointer and stack @@ -1942,7 +1939,9 @@ makes it convenient to locate programatically and during debugging.
TODO - More to come.
+