diff options
Diffstat (limited to 'debian/uncrustify-trinity/uncrustify-trinity-0.78.1/tests/expected/cpp/34370-asm_block_pp.cpp')
-rw-r--r-- | debian/uncrustify-trinity/uncrustify-trinity-0.78.1/tests/expected/cpp/34370-asm_block_pp.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/tests/expected/cpp/34370-asm_block_pp.cpp b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/tests/expected/cpp/34370-asm_block_pp.cpp new file mode 100644 index 00000000..e8fc87a6 --- /dev/null +++ b/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/tests/expected/cpp/34370-asm_block_pp.cpp @@ -0,0 +1,20 @@ + +void add128( uint64_t & rlo, uint64_t & rhi, uint64_t addlo ) { +#if defined(HAVE_X86_64_ASM) + __asm__ ("addq %2, %0\n" + "adcq $0, %1\n" +#if defined(__clang__) + // clang cannot work properly with "g" and silently + // produces hardly-workging code, if "g" is specified; + : "+r" (rlo), "+r" (rhi) + : "m" (addlo) +#else + : "+g" (rlo), "+g" (rhi) + : "g" (addlo) +#endif + ); +#else + rlo += addlo; + rhi += (rlo < addlo); +#endif +} |