History log of /llvm-project/llvm/include/llvm/CodeGen/SelectionDAGNodes.h (Results 476 – 500 of 866)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# b425feb2 03-Apr-2009 Dan Gohman <gohman@apple.com>

Delete ISD::INSERT_SUBREG and ISD::EXTRACT_SUBREG, which are unused.
Note that these are distinct from TargetInstrInfo::INSERT_SUBREG
and TargetInstrInfo::EXTRACT_SUBREG, which are used.

llvm-svn: 6

Delete ISD::INSERT_SUBREG and ISD::EXTRACT_SUBREG, which are unused.
Note that these are distinct from TargetInstrInfo::INSERT_SUBREG
and TargetInstrInfo::EXTRACT_SUBREG, which are used.

llvm-svn: 68355

show more ...


# cff6953c 01-Apr-2009 Dan Gohman <gohman@apple.com>

Use CHAR_BIT instead of hard-coding 8 in several places where it
is appropriate. This helps visually differentiate host-oriented
calculations from target-oriented calculations.

llvm-svn: 68227


# 7135a9d1 23-Mar-2009 Dan Gohman <gohman@apple.com>

Clarify a comment.

llvm-svn: 67525


# 1fb8aedd 13-Mar-2009 Evan Cheng <evan.cheng@apple.com>

Fix some significant problems with constant pools that resulted in unnecessary paddings between constant pool entries, larger than necessary alignments (e.g. 8 byte alignment for .literal4 sections),

Fix some significant problems with constant pools that resulted in unnecessary paddings between constant pool entries, larger than necessary alignments (e.g. 8 byte alignment for .literal4 sections), and potentially other issues.

1. ConstantPoolSDNode alignment field is log2 value of the alignment requirement. This is not consistent with other SDNode variants.
2. MachineConstantPool alignment field is also a log2 value.
3. However, some places are creating ConstantPoolSDNode with alignment value rather than log2 values. This creates entries with artificially large alignments, e.g. 256 for SSE vector values.
4. Constant pool entry offsets are computed when they are created. However, asm printer group them by sections. That means the offsets are no longer valid. However, asm printer uses them to determine size of padding between entries.
5. Asm printer uses expensive data structure multimap to track constant pool entries by sections.
6. Asm printer iterate over SmallPtrSet when it's emitting constant pool entries. This is non-deterministic.


Solutions:
1. ConstantPoolSDNode alignment field is changed to keep non-log2 value.
2. MachineConstantPool alignment field is also changed to keep non-log2 value.
3. Functions that create ConstantPool nodes are passing in non-log2 alignments.
4. MachineConstantPoolEntry no longer keeps an offset field. It's replaced with an alignment field. Offsets are not computed when constant pool entries are created. They are computed on the fly in asm printer and JIT.
5. Asm printer uses cheaper data structure to group constant pool entries.
6. Asm printer compute entry offsets after grouping is done.
7. Change JIT code to compute entry offsets on the fly.

llvm-svn: 66875

show more ...


# 4718296d 09-Mar-2009 Bob Wilson <bob.wilson@apple.com>

Add a constructor for BuildVectorSDNode and revert the temporary workaround
from 66280. I was unable to verify this with gcc-3.4.6, but with gcc-3.3 it
avoids the "base class with only non-default c

Add a constructor for BuildVectorSDNode and revert the temporary workaround
from 66280. I was unable to verify this with gcc-3.4.6, but with gcc-3.3 it
avoids the "base class with only non-default constructor in class without
a constructor" warning. Apparently that warning was promoted to an error
in gcc-3.4.

llvm-svn: 66424

show more ...


# 8498d2dd 06-Mar-2009 Tanya Lattner <tonic@nondot.org>

Add default constructor to SDNode to make gcc 3.4.6 happy.

llvm-svn: 66280


Revision tags: llvmorg-2.5.0
# 92b551bc 03-Mar-2009 Dan Gohman <gohman@apple.com>

Fix a bunch of Doxygen syntax issues. Escape special characters,
and put @file directives on their own comment line.

llvm-svn: 65920


# 85cefe85 02-Mar-2009 Bob Wilson <bob.wilson@apple.com>

Generalize BuildVectorSDNode::isConstantSplat to use APInts and handle
arbitrary vector sizes. Add an optional MinSplatBits parameter to specify
a minimum for the splat element size. Update the PPC

Generalize BuildVectorSDNode::isConstantSplat to use APInts and handle
arbitrary vector sizes. Add an optional MinSplatBits parameter to specify
a minimum for the splat element size. Update the PPC target to use the
revised interface.

llvm-svn: 65899

show more ...


# d8ea0e14 01-Mar-2009 Bob Wilson <bob.wilson@apple.com>

Combine PPC's GetConstantBuildVectorBits and isConstantSplat functions to a new
method in a BuildVectorSDNode "pseudo-class".

llvm-svn: 65747


# a49de9de 25-Feb-2009 Evan Cheng <evan.cheng@apple.com>

Revert BuildVectorSDNode related patches: 65426, 65427, and 65296.

llvm-svn: 65482


# e2fdc317 25-Feb-2009 Scott Michel <scottm@aero.org>

Expand tabs to spaces (overlooked in previous commit)

llvm-svn: 65427


# bb878288 25-Feb-2009 Scott Michel <scottm@aero.org>

Remove all "cached" data from BuildVectorSDNode, preferring to retrieve
results via reference parameters.

This patch also appears to fix Evan's reported problem supplied as a
reduced bugpoint test c

Remove all "cached" data from BuildVectorSDNode, preferring to retrieve
results via reference parameters.

This patch also appears to fix Evan's reported problem supplied as a
reduced bugpoint test case.

llvm-svn: 65426

show more ...


# 9d31aca6 22-Feb-2009 Scott Michel <scottm@aero.org>

Introduce the BuildVectorSDNode class that encapsulates the ISD::BUILD_VECTOR
instruction. The class also consolidates the code for detecting constant
splats that's shared across PowerPC and the Cell

Introduce the BuildVectorSDNode class that encapsulates the ISD::BUILD_VECTOR
instruction. The class also consolidates the code for detecting constant
splats that's shared across PowerPC and the CellSPU backends (and might be
useful for other backends.) Also introduces SelectionDAG::getBUID_VECTOR() for
generating new BUILD_VECTOR nodes.

llvm-svn: 65296

show more ...


# cf0da6c5 17-Feb-2009 Scott Michel <scottm@aero.org>

Remove trailing whitespace to reduce later commit patch noise.

(Note: Eventually, commits like this will be handled via a pre-commit hook that
does this automagically, as well as expand tabs to spa

Remove trailing whitespace to reduce later commit patch noise.

(Note: Eventually, commits like this will be handled via a pre-commit hook that
does this automagically, as well as expand tabs to spaces and look for 80-col
violations.)

llvm-svn: 64827

show more ...


# 8ba71321 07-Feb-2009 Dale Johannesen <dalej@apple.com>

Make SDNode constructors take a DebugLoc always.
Adjust derived classes to pass UnknownLoc where
a DebugLoc does not make sense. Pick one of
DebugLoc and non-DebugLoc variants to survive
for all suc

Make SDNode constructors take a DebugLoc always.
Adjust derived classes to pass UnknownLoc where
a DebugLoc does not make sense. Pick one of
DebugLoc and non-DebugLoc variants to survive
for all such classes.

llvm-svn: 64000

show more ...


# 773ca057 07-Feb-2009 Dale Johannesen <dalej@apple.com>

Deleted one line too many. oops.

llvm-svn: 63996


# a72d41a6 07-Feb-2009 Dale Johannesen <dalej@apple.com>

Remove now-unused constructors.

llvm-svn: 63995


# 69d2cd92 05-Feb-2009 Dan Gohman <gohman@apple.com>

Delete some trailing whiespaces.

llvm-svn: 63887


# ffee3d83 04-Feb-2009 Stuart Hastings <stuart@apple.com>

Since I'm obliged to work with a development OS that currently doesn't
support GraphViz, I've been using the foo->dump() facility. This
patch is a minor rewrite to the SelectionDAG dump() stuff to m

Since I'm obliged to work with a development OS that currently doesn't
support GraphViz, I've been using the foo->dump() facility. This
patch is a minor rewrite to the SelectionDAG dump() stuff to make it a
little more helpful. The existing foo->dump() functionality does not
change; this patch adds foo->dumpr(). All of this is only useful when
running LLVM under a debugger.

llvm-svn: 63736

show more ...


# 3a09f558 03-Feb-2009 Dale Johannesen <dalej@apple.com>

DebugLoc propagation; adjustment to things omitted
from SelectionDagBuild.

llvm-svn: 63680


# 76a07f59 03-Feb-2009 Dan Gohman <gohman@apple.com>

Use the SubclassData field to hold ExtType, isTrunc, and MemIndexedMode
information. This eliminates the need for the Flags field in MemSDNode,
so this makes LoadSDNode and StoreSDNode smaller. Also,

Use the SubclassData field to hold ExtType, isTrunc, and MemIndexedMode
information. This eliminates the need for the Flags field in MemSDNode,
so this makes LoadSDNode and StoreSDNode smaller. Also, it makes
FoldingSetNodeIDs for loads and stores two AddIntegers smaller.

llvm-svn: 63577

show more ...


# 2171f5ae 02-Feb-2009 Dan Gohman <gohman@apple.com>

Reposition the DebugLoc field to reduce padding space
on LP64 hosts.

llvm-svn: 63530


# f52ac415 28-Jan-2009 Dan Gohman <gohman@apple.com>

Add more comments describing SDNode operator codes.

llvm-svn: 63239


# 666bf204 28-Jan-2009 Dale Johannesen <dalej@apple.com>

Add DebugLoc-aware constructors for SDNode derived
classes (those that reasonably have a DebugLoc
associated with them).

llvm-svn: 63236


# 7a1b4538 28-Jan-2009 Dan Gohman <gohman@apple.com>

Add some comments on ISD::NodeType.

llvm-svn: 63234


1...<<11121314151617181920>>...35