History log of /llvm-project/llvm/lib/CodeGen/MachineVerifier.cpp (Results 476 – 500 of 552)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# bf4550e3 18-Dec-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Pass a Banner argument to the machine code verifier both from
createMachineVerifierPass and MachineFunction::verify.

The banner is printed before the machine code dump, just like the printer pass.

Pass a Banner argument to the machine code verifier both from
createMachineVerifierPass and MachineFunction::verify.

The banner is printed before the machine code dump, just like the printer pass.

llvm-svn: 122113

show more ...


# a043b628 17-Dec-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Allow missing kill flags on an untied operand of a two-address instruction when
the operand uses the same register as a tied operand:

%r1 = add %r1, %r1

If add were a three-address instruction, k

Allow missing kill flags on an untied operand of a two-address instruction when
the operand uses the same register as a tied operand:

%r1 = add %r1, %r1

If add were a three-address instruction, kill flags would be required on at
least one of the uses. Since it is a two-address instruction, the tied use
operand must not have a kill flag.

This change makes the kill flag on the untied use operand optional.

llvm-svn: 122082

show more ...


# bcc230a7 17-Nov-2010 Eric Christopher <echristo@apple.com>

Only avoid the check if we're the last operand before the variable
operands in a variadic instruction.

llvm-svn: 119446


# 08c08314 16-Nov-2010 Eric Christopher <echristo@apple.com>

Make the verifier a little quieter on instructions that it's probably
(and likely) wrong about anyhow.

llvm-svn: 119320


# 2551f13c 01-Nov-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Be more precise about verifying missing kill flags.

It is legal for an instruction to have two operands using the same register,
only one a kill. This is interpreted as a kill.

llvm-svn: 117981


# d7a82400 01-Nov-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Add kill flag verification.

At least X86FloatingPoint requires correct kill flags after register allocation,
and targets using register scavenging benefit. Conservative kill flags are not
enough.

l

Add kill flag verification.

At least X86FloatingPoint requires correct kill flags after register allocation,
and targets using register scavenging benefit. Conservative kill flags are not
enough.

llvm-svn: 117960

show more ...


# 31fffb62 01-Nov-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Add basic LiveStacks verification.

When an instruction refers to a spill slot with a LiveStacks entry, check that
the spill slot is live at the instruction.

llvm-svn: 117944


# db84d8f4 30-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Disable more of physical register live intervals verification.

llvm-svn: 117762


# b9875547 29-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Print out the connected components in the verifier after complaining about their
multiplicity.

llvm-svn: 117630


# dc5e7065 28-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

One day, physical register live ranges will be sensible.

llvm-svn: 117602


# 0e7a011a 27-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Physical registers trivially have multiple connected components all the time.
Only virtuals should be requires to be connected.

llvm-svn: 117422


# 260fa289 26-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Verify that live intervals are connected. If there are multiple connected
components, each should get its own virtual register.

llvm-svn: 117407


# b7050233 26-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Teach MachineBasicBlock::print() to annotate instructions and blocks with
SlotIndexes when available.

llvm-svn: 117392


# db594373 26-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Remmeber to print full live interval on verification error.

llvm-svn: 117391


# 9eabfa3a 26-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Don't verify physical registers going into landing pads.
Magic is happening that we don't understand.

llvm-svn: 117370


# 8a09620d 23-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Verify LiveIntervals against the CFG, ensuring that live-in values are live-out
of all predecessors.

llvm-svn: 117191


# 0fb303d3 22-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Add more verification of LiveIntervals.

llvm-svn: 117170


# 7c9d584e 21-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Permit landing pad successor blocks when verifying basic blocks that end in an
unconditional branch.

llvm-svn: 117041


# 6c18d1aa 19-Oct-2010 Owen Anderson <resistor@mac.com>

Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which
must be called in the pass's constructor. This function uses static dependency

Get rid of static constructors for pass registration. Instead, every pass exposes an initializeMyPassFunction(), which
must be called in the pass's constructor. This function uses static dependency declarations to recursively initialize
the pass's dependencies.

Clients that only create passes through the createFooPass() APIs will require no changes. Clients that want to use the
CommandLine options for passes will need to manually call the appropriate initialization functions in PassInitialization.h
before parsing commandline arguments.

I have tested this with all standard configurations of clang and llvm-gcc on Darwin. It is possible that there are problems
with the static dependencies that will only be visible with non-standard options. If you encounter any crash in pass
registration/creation, please send the testcase to me directly.

llvm-svn: 116820

show more ...


# df7a4f25 07-Oct-2010 Owen Anderson <resistor@mac.com>

Now with fewer extraneous semicolons!

llvm-svn: 115996


# 1a065e4e 06-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Skip unused registers when verifying LiveIntervals.

llvm-svn: 115874


Revision tags: llvmorg-2.8.0
# 4088ceaf 02-Oct-2010 Jakob Stoklund Olesen <stoklund@2pi.dk>

Stop using LiveRange in MachineVerifier.

llvm-svn: 115408


Revision tags: llvmorg-2.8.0-rc3, llvmorg-2.8.0-rc2, llvmorg-2.8.0-rc1, llvmorg-2.8.0-rc0
# d31d82d7 23-Aug-2010 Owen Anderson <resistor@mac.com>

Now that PassInfo and Pass::ID have been separated, move the rest of the passes over to the new registration API.

llvm-svn: 111815


# 68caaaf2 19-Aug-2010 Bill Wendling <isanbard@gmail.com>

Correct header.

llvm-svn: 111540


# a7aed186 06-Aug-2010 Owen Anderson <resistor@mac.com>

Reapply r110396, with fixes to appease the Linux buildbot gods.

llvm-svn: 110460


1...<<11121314151617181920>>...23