* redo LsrAnd2Lsr optimization

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@23413 3ad0048d-3df7-0310-abae-a5850022a9f2
+ implemented a tcasenode.printnodetree printing all cases

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@23414 3ad0048d-3df7-0310-abae-a5850022a9f2
* don't write directly to the function result destination if we are inlining and if the destination is too complex to evaluate (threadvar etc.)

git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@23415 3ad0048d-3df7-0310-abae-a5850022a9f2