YAML I/O Patch (backported to 3.1)

This commit includes the 3.1 backport of the (currently pending) 3.2/3.3 yamlio patch, as discussed
on the llvm mailing list (see http://thread.gmane.org/gmane.comp.compilers.llvm.cvs/128805/focus=129712).
YAMLExport: First prototype serializing machine code information to YAML files (PML format)
Usage: patmos-llc --serialize=file.pml -o file.s file.ll
Create directory tools/psk
tools/psk: simple script to merge stream of PML documents
YAMLExport: Design Refinements (YAML documents, Architecture trait), bitcode export prototype.
Merge remote-tracking branch 'origin/master' into psk
patmos: call graph builder as analysis, simple stack cache analysis

* turn call graph builder into analysis-style pass
* simple stack cache analysis on call graph
* remove useless SENS instructions
YAMLExport: Initial implementation creating and serializing control-flow relation graphs
Merge remote-tracking branch 'origin/master' into psk
YAMLExport: Implement Tabu List strategy, which allows to cope with a larger class of mappings
YAMLExport: Fix Tabu-List recovery strategy
YAMLTraits: Update from llvm.org HEAD
psk: small initial demo
psk: playing with flow fact equations
psk: Update to psk-demo driver and psk-demo-equations example
patmos: Added option to force emitting block labels for all targets
patmos: Added option to force emitting block labels for all targets
PSK: Initial commit of psk-pml2ais
psk: jumptable export to ais (with stefan)
pml/psk: move PML export pass to patmos target machine, extract symbols from ELF, rename {YAML->PML}Export