PPC NCG: Improve pointer de-tagging code

Authored by trommler on Apr 29 2016, 12:45 PM.

Description

PPC NCG: Improve pointer de-tagging code

Generate a clrr[wd]i instruction to clear the tag bits in a pointer.
This saves one instruction and one temporary register.

Optimize signed comparison with zero after andi. operation This saves
one instruction when comparing a pointer tag with zero.

This reduces code size by 0.6 % in all nofib benchmarks.

Test Plan: validate on AIX and 32-bit Linux

Reviewed By: erikd, hvr

Differential Revision: https://phabricator.haskell.org/D2093

Details

Committed
austinApr 29 2016, 12:45 PM
Reviewer
erikd
Differential Revision
D2093: PPC NCG: Improve pointer de-tagging code
Parents
rGHC00053ee6f450: Fix typo: Superclases -> Superclasses
Branches
Unknown
Tags
Unknown