[PATCH] D60601: [DAGCombiner] Exploiting more about the transformation of TransformFPLoadStorePair function

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 27 03:10:35 PDT 2019


lebedev.ri added inline comments.


================
Comment at: llvm/test/CodeGen/ARM/ldst-f32-2-i32.ll:57
+
+; CHECK-LABEL: _test:
+; CHECK: ldr r3, [pc, r3]
----------------
wuzish wrote:
> lebedev.ri wrote:
> > steven.zhang wrote:
> > > wuzish wrote:
> > > > xbolva00 wrote:
> > > > > Can you please remove test checks and regenerate them using update_llc_tests_checks.py script before you commit this patch ?
> > > > > Thanks.
> > > > I am afraid that -mtriple of darwin is not supported in update_llc_tests_checks.py after I try, and we just write checks manually.
> > > Maybe, you can fix it as this patch did for darwin triple. https://reviews.llvm.org/D63723
> > What @steven.zhang said, let's just add the support there :)
> > I'd suggest to first try `'armv7-apple-darwin' : (scrub_asm_arm_eabi, ASM_FUNCTION_AARCH64_DARWIN_RE),`
> > how does that look?
> I have test all ASM_FUNCTION about AARCH64 and ARM, all of them don't work. I am afraid it's not among them. Need write a new regular expression.
So as per https://godbolt.org/z/Z9JT6W the structure is:
```
        .globl  _test                   @ -- Begin function test
        .p2align        2
        .code   32                      @ @test
_test:
<body>
                                        @ -- End function
```
I haven't tried but i think it should be roughly this:
```
ASM_FUNCTION_ARM_DARWIN_RE = re.compile(
     r'^[ \t]*\.globl[ \t]*_(?P<func>)[ \t]*@[ \t]--[ \t]Begin[ \t]function[ \t](?P=func)',
     r'^_(?P=func):'
     r'(?P<body>.*?)'
     r'^[ \t]*@[ \t]--[ \t]End[ \t]function',
     flags=(re.M | re.S))
```


Repository:
  rL LLVM

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60601/new/

https://reviews.llvm.org/D60601





More information about the llvm-commits mailing list