Page MenuHomePhabricator
Feed Advanced Search

Thu, Feb 25

myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.

[NFC] Combine README of test/CodeGen/M68k with the one in test/CodeGen/M68k/Encoding

Thu, Feb 25, 3:50 PM · Restricted Project
myhsu added inline comments to D88392: [M68k] (Patch 6/8) IR Tests.
Thu, Feb 25, 3:45 PM · Restricted Project
myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Addressed feedbacks
Thu, Feb 25, 3:45 PM · Restricted Project
myhsu added inline comments to D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
Thu, Feb 25, 2:22 PM · Restricted Project
myhsu updated the diff for D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
  • Addressed feedbacks
Thu, Feb 25, 2:21 PM · Restricted Project
myhsu added inline comments to D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
Thu, Feb 25, 2:21 PM · Restricted Project
myhsu updated the diff for D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
  • [NFC] Addressed feedbacks
Thu, Feb 25, 2:20 PM · Restricted Project
myhsu added inline comments to D88390: [M68k] (Patch 4/8) MC layer and object file support.
Thu, Feb 25, 2:20 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • Addressed feedbacks
Thu, Feb 25, 2:19 PM · Restricted Project
myhsu added inline comments to D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
Thu, Feb 25, 2:18 PM · Restricted Project
myhsu updated the diff for D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
  • Addressed feedbacks
Thu, Feb 25, 2:18 PM · Restricted Project
myhsu updated the diff for D88386: [MIR][M68K] (Patch 2/8): Changes on Target-independent MIR part.
  • [NFC] Addressed feedbacks
Thu, Feb 25, 2:16 PM · Restricted Project
myhsu updated the diff for D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.
  • Addressed feedbacks
Thu, Feb 25, 2:15 PM · Restricted Project

Wed, Feb 17

myhsu added inline comments to D88392: [M68k] (Patch 6/8) IR Tests.
Wed, Feb 17, 11:58 PM · Restricted Project

Sun, Feb 14

myhsu added a comment to D88392: [M68k] (Patch 6/8) IR Tests.

As I've said before, please use update_llc_test_checks.py. Manually-maintained CHECK lines are a complete pain when making tree-wide changes.

Sun, Feb 14, 10:58 PM · Restricted Project
myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Use update_llc_test_checks.py to manage all the assembly tests
Sun, Feb 14, 10:56 PM · Restricted Project
myhsu added inline comments to D88391: [M68k] (Patch 5/8) Target lowering.
Sun, Feb 14, 10:49 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Addressed feedbacks
Sun, Feb 14, 10:48 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • [NFC] Addressed some of the feedbacks
Sun, Feb 14, 10:47 PM · Restricted Project
myhsu updated the diff for D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
  • [NFC] Addressed feedbacks
Sun, Feb 14, 10:46 PM · Restricted Project

Fri, Feb 12

myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • [NFC] Remove reset of the x00 prefixes
Fri, Feb 12, 12:26 PM · Restricted Project
myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • [NFC] Rename CHECK prefixes
    • Replace any standalone x00 prefix with normal CHECK
    • Capitalize custom prefix
Fri, Feb 12, 12:18 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • [NFC] Addressed most of the feedbacks
Fri, Feb 12, 12:16 PM · Restricted Project

Wed, Feb 3

myhsu added inline comments to D88391: [M68k] (Patch 5/8) Target lowering.
Wed, Feb 3, 9:11 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Addressed feedbacks
Wed, Feb 3, 9:11 PM · Restricted Project

Mon, Feb 1

myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Reflecting changes from D88391 on optimizing multiplications
Mon, Feb 1, 10:54 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Addressed feedbacks
    • Use TargetLowering callback to optimize multiplications instead of doing manually
Mon, Feb 1, 10:52 PM · Restricted Project
myhsu added inline comments to D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
Mon, Feb 1, 2:31 PM · Restricted Project
myhsu updated the diff for D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
  • Addressed feedback
    • Remove redundant target macro definitions
Mon, Feb 1, 2:31 PM · Restricted Project
myhsu added inline comments to D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
Mon, Feb 1, 1:45 PM · Restricted Project
myhsu updated the diff for D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
  • Addressed feedbacks
Mon, Feb 1, 1:44 PM · Restricted Project
myhsu added inline comments to D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
Mon, Feb 1, 1:44 PM · Restricted Project
myhsu updated the diff for D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
  • Addressed feedbacks
    • Now M68k tries to use ABI that is compatible with GCC
Mon, Feb 1, 1:43 PM · Restricted Project
myhsu added inline comments to D88392: [M68k] (Patch 6/8) IR Tests.
Mon, Feb 1, 1:42 PM · Restricted Project
myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Addressed feedbacks
    • Split the problems found in ASM/Arith/imul.ll into a separate test case ASM/Arith/imul-neg.ll and mark XFAIL for now
Mon, Feb 1, 1:42 PM · Restricted Project
myhsu added inline comments to D88391: [M68k] (Patch 5/8) Target lowering.
Mon, Feb 1, 1:38 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Addressed some of the feedbacks
Mon, Feb 1, 1:37 PM · Restricted Project
myhsu updated the diff for D88386: [MIR][M68K] (Patch 2/8): Changes on Target-independent MIR part.
  • [NFC] Addressed feedbacks
Mon, Feb 1, 1:36 PM · Restricted Project

Fri, Jan 29

myhsu added a comment to D88390: [M68k] (Patch 4/8) MC layer and object file support.

We don't have AsmParser and disassembler right now. We're using MIR as input to test our integrated assembler, so you're right, we can't test MC layer without CodeGen. But why would that will be a hard blocker?

The real requirement is being able to produce code at the end. If that relies on (free, accessible) third-party tools, then it should be find for the first import. Some production targets have (free) proprietary tools that are required to continue the code generation (ex. NVPTX). Other targets have assemblers but can be tested (no available hardware). Having specific hard requirements would make it really hard for LLVM to have new backends.

Fri, Jan 29, 9:34 AM · Restricted Project

Jan 28 2021

myhsu added a comment to D88390: [M68k] (Patch 4/8) MC layer and object file support.

So, uh, correct me if I'm wrong but none of these patches add assembler or disassembler support? Should that not be present before a target is accepted? Otherwise there's no way to test any of the MC layer without including CodeGen.

Jan 28 2021, 1:48 PM · Restricted Project

Jan 26 2021

myhsu added inline comments to D95029: [CSKY 6/n] Add support branch and symbol series instruction.
Jan 26 2021, 9:55 PM · Restricted Project

Jan 24 2021

myhsu added inline comments to D88391: [M68k] (Patch 5/8) Target lowering.
Jan 24 2021, 10:26 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • [NFC] Fixed formatting
Jan 24 2021, 10:25 PM · Restricted Project
myhsu added inline comments to D88390: [M68k] (Patch 4/8) MC layer and object file support.
Jan 24 2021, 10:24 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • Addressed feedbacks
Jan 24 2021, 10:23 PM · Restricted Project
myhsu updated subscribers of D95315: [CODE_OWNERS][M68k] (Patch 0/8) Add code owner for the M68k target.
Jan 24 2021, 10:53 AM · Restricted Project
myhsu requested review of D95315: [CODE_OWNERS][M68k] (Patch 0/8) Add code owner for the M68k target.
Jan 24 2021, 10:51 AM · Restricted Project
myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

@myhsu I think you will also need a Patch 0/8 - adding you as the m68k code owner :)

Jan 24 2021, 10:46 AM · Restricted Project

Jan 21 2021

myhsu added inline comments to D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
Jan 21 2021, 1:02 PM · Restricted Project
myhsu updated the diff for D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
  • Addressed feedbacks
    • And the synergy header comment changes from 88390
Jan 21 2021, 1:00 PM · Restricted Project
myhsu added inline comments to D88390: [M68k] (Patch 4/8) MC layer and object file support.
Jan 21 2021, 10:58 AM · Restricted Project

Jan 20 2021

myhsu added inline comments to D95030: [CSKY 7/n] Initial codegen support for ALU operations.
Jan 20 2021, 10:35 PM · Restricted Project
myhsu added a comment to D94007: [CSKY 5/n] Add support for all CSKY basic integer instructions except for branch series.

Can you also link patch 1~3 as the related revisions as well?

Jan 20 2021, 10:29 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • [NFC] Addressed feedbacks
    • Use atLeastM68020, atLeastM68030...etc to replace isM68020, isM68030...etc
Jan 20 2021, 9:46 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • [NFC] Addressed feedbacks
Jan 20 2021, 9:40 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • [NFC] Fixed minor formatting issue
Jan 20 2021, 12:48 AM · Restricted Project
myhsu added inline comments to D88391: [M68k] (Patch 5/8) Target lowering.
Jan 20 2021, 12:45 AM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Addressed feedbacks
Jan 20 2021, 12:44 AM · Restricted Project
myhsu added inline comments to D88390: [M68k] (Patch 4/8) MC layer and object file support.
Jan 20 2021, 12:41 AM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • Addressed feedbacks
Jan 20 2021, 12:41 AM · Restricted Project

Jan 19 2021

myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

Thanks @myhsu!

@jrtc27 - you're still blocking this - is there anything else you think we need to address here?

For this review, no. There are a bunch of outstanding issues on the other reviews though that need addressing; I don't know if it makes sense to land this now or wait and land them all in one go once the other reviews are fixed and approved.

The plan is for the entire patch series to be accepted before any are pushed.

Jan 19 2021, 9:27 PM · Restricted Project

Jan 18 2021

myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

Absolutely. I agree this problem should be solve before graduate from experimental target. I will create these bugs soon

You could also create a meta bug called something like "m68k in production" that all bugs that needed to be solved before we move the target to production are dependencies.

People filling bugs against the target can link to that meta bug if the issue is serious enough.

You could also create infrastructure bugs like creating buildbots, passing certain milestones in compiling programs and OSs, etc.

It'd be easy then to see that the target is good enough to be promoted to production once all those bugs (or at least all critical ones) are solved.

Jan 18 2021, 10:50 AM · Restricted Project

Jan 15 2021

myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

@myhsu Please can you raise a bug covering the CodeBeads vs TSFlags refactor options and make it a blocker against a second bug for making the m68k backend non-experimental?

Jan 15 2021, 2:08 PM · Restricted Project

Jan 2 2021

myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

I was thinking of using a bit in the other flags member, Flags, as opposed to TSFlags. Then there would be nothing sneaky going on in the union itself.

Making it an anonymous union would mean that all current references to TSFlags would still work, correct?

Jan 2 2021, 5:36 PM · Restricted Project
myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

If it isn't possible to encode the information in TSFlags, another possibility is to add a pointer to the MCInstrDesc class that points to some kind of auxiliary class/struct.

This actually gives me an idea to directly use the MCInstrDesc::TSFlags as a pointer to auxiliary data structures. That is:

auto* AuxTable =  reinterpret_cast<uint8_t*>(MD.TSFlags);

Definitely not. Integers are not pointers, and will break on CHERI. You would need to make TSFlags a uintptr_t if you want that to work, but then you only get 32 bits on 32-bit architectures.

Jan 2 2021, 3:00 PM · Restricted Project
myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

Do you have any idea how much work would be necessary for the TSFlags refactor?

Jan 2 2021, 2:48 PM · Restricted Project

Dec 30 2020

myhsu added a comment to D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.

I still don't understand what problem code beads are trying to solve that isn't already solved by existing backends like X86. Why can't you just assign operands to instruction encoding bits like a normal backend?

Dec 30 2020, 1:37 PM · Restricted Project
myhsu added inline comments to D88391: [M68k] (Patch 5/8) Target lowering.
Dec 30 2020, 12:49 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • [NFC] Addressed some of the feedbacks
    • Need to double check the comments related to Clang part changes and pointer size
Dec 30 2020, 12:49 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • Addressed some of the feedbacks
    • I need a little more time double checking the (motorola) assembly syntax
Dec 30 2020, 12:39 PM · Restricted Project
myhsu updated the diff for D88385: [TableGen][M68K] (Patch 1/8) Utilities for complex instruction addressing modes: CodeBeads and logical operand helper functions.
  • [NFC] Addressed feedbacks
Dec 30 2020, 12:35 PM · Restricted Project

Dec 17 2020

myhsu added inline comments to D93372: [CSKY 3/n] Add bare-bones C-SKY MCTargetDesc.
Dec 17 2020, 9:36 AM · Restricted Project

Dec 15 2020

myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.

Fixed incorrect formats (redundant commas) when printing move mask

Dec 15 2020, 1:36 PM · Restricted Project
myhsu updated myhsu.
Dec 15 2020, 1:03 PM
myhsu added inline comments to D88392: [M68k] (Patch 6/8) IR Tests.
Dec 15 2020, 12:56 PM · Restricted Project
myhsu added inline comments to D88390: [M68k] (Patch 4/8) MC layer and object file support.
Dec 15 2020, 12:44 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • Addressed some of the feedbacks
  • [NFC] Removed '#<number>' in the comments
  • [NFC] Fixed minor formatting issues
Dec 15 2020, 12:43 PM · Restricted Project
myhsu updated the diff for D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
  • [NFC] Remove all '#<number>' TODO/FIXME comments (they were ticket number from legacy issue tracker) and add more meaningful comments/explanations
  • [NFC] Add more explanation on building LLVM natively on M68k (i.e. the alignment issue)
    • Eventually I still decide to ship native build support on M68k via -malign-int flag since it still works in some M68k CPUs w/ 32-bit bus, albeit not all of the models
Dec 15 2020, 11:07 AM · Restricted Project

Dec 10 2020

myhsu closed D88868: [M680x0] Add CycleTimer implementation for M68K architecture.

It turns out I've already committed this at the same time with changes in llvm-test (after @lebedev.ri approved this) and I totally forgot about it :-P
https://github.com/llvm/llvm-project/commit/bd5fe7b010ea0d6c4b1e5e3740085f5eabf7def6

Dec 10 2020, 9:31 AM · Restricted Project, Restricted Project
myhsu added a comment to D88868: [M680x0] Add CycleTimer implementation for M68K architecture.

I don't believe this needs libc++'s signoff, it only mechanically replicates
the exact same change to the same external dependency into all the duplicate copies of said dependency.
@myhsu i still maintain that you can just commit this now.

As @ldionne mentioned libcxx was added automatically and I couldn't remove it. Otherwise I've already committed this patch a while ago: https://github.com/llvm/llvm-test-suite/commit/25883edc2f615a84c4fa741e997904293474bbc0

Isn't that just testsuite's copy of the code from D89011? It looks like at least the libcxx parts of this patch still need committing.

Dec 10 2020, 8:07 AM · Restricted Project, Restricted Project

Dec 9 2020

myhsu updated the diff for D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
  • [NFC] Fix minor formatting
Dec 9 2020, 8:43 PM · Restricted Project
myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Rewrite utils/extract-section into utils/extract-section.py
    • The new Python script is also more generic which doesn't have some M68k specific assumption (e.g. always group in 16-bits in hex mode) as the previous version
  • Update M68k-local LIT config
Dec 9 2020, 8:41 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • [NFC] Fix formatting
Dec 9 2020, 8:38 PM · Restricted Project
myhsu added inline comments to D88386: [MIR][M68K] (Patch 2/8): Changes on Target-independent MIR part.
Dec 9 2020, 2:31 PM · Restricted Project
myhsu updated the diff for D88386: [MIR][M68K] (Patch 2/8): Changes on Target-independent MIR part.
  • Rebase to latest changes
  • Addressed feedbacks
Dec 9 2020, 2:31 PM · Restricted Project
myhsu added a comment to D88868: [M680x0] Add CycleTimer implementation for M68K architecture.

I don't believe this needs libc++'s signoff, it only mechanically replicates
the exact same change to the same external dependency into all the duplicate copies of said dependency.
@myhsu i still maintain that you can just commit this now.

Dec 9 2020, 1:33 PM · Restricted Project, Restricted Project

Dec 6 2020

myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Update test cases related to 8-bit multiplications.
Dec 6 2020, 1:08 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Fix ISel failure when it comes to 8-bit multiplications
Dec 6 2020, 1:07 PM · Restricted Project

Dec 3 2020

myhsu added inline comments to D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
Dec 3 2020, 11:08 PM · Restricted Project
myhsu updated the diff for D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
  • Add support for M68060 sub-target
Dec 3 2020, 11:03 PM · Restricted Project
myhsu updated the diff for D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
  • Add support for M68060 sub-target
Dec 3 2020, 11:02 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Add M68060 sub-target
Dec 3 2020, 11:01 PM · Restricted Project
myhsu updated the diff for D88389: [M68k] (Patch 3/8) Basic infrastructures and target description files.
  • Add M68060 sub-target
    • Our original plan was to add this after the current patch series got flushed out. But after reading the feedbacks, and due to the fact that M68060 doesn't have major ISA difference with M68040, we decided to add the sub-target skeleton now and fill in the details later.
Dec 3 2020, 10:59 PM · Restricted Project
myhsu updated the diff for D88392: [M68k] (Patch 6/8) IR Tests.
  • Fix / Update failed test cases. Now we have 100% passing rate except one XFAIL, yeah!
    • Most of the previous failed test cases were caused by less-optimal results from previous version of codegen. For example, the codegen for jump tables.
    • The only XFAIL is caused by (selection DAG) ISel which failed to select one instruction that supposed to have 16-bit operand but a 8-bit one was given. It seems to take more time to fix it so just mark XFAIL for now
Dec 3 2020, 5:54 PM · Restricted Project
myhsu updated the diff for D88391: [M68k] (Patch 5/8) Target lowering.
  • Re-enable analyzeBranch implementation
    • Skip if the branch target is an immediate value, which is rare in real world cases but essential for some of the binary encoding test cases.
Dec 3 2020, 5:49 PM · Restricted Project
myhsu updated the diff for D88390: [M68k] (Patch 4/8) MC layer and object file support.
  • Fix incorrect relaxation decision
Dec 3 2020, 5:45 PM · Restricted Project

Dec 1 2020

myhsu added inline comments to D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
Dec 1 2020, 9:44 PM · Restricted Project
myhsu updated the diff for D88393: [cfe][M68k] (Patch 7/8) Basic Clang support.
  • Addressed all the feedbacks
  • Fixed minor issues that would retrieve the wrong TargetCodeGenInfo instance
Dec 1 2020, 9:44 PM · Restricted Project

Nov 30 2020

myhsu added inline comments to D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
Nov 30 2020, 11:13 PM · Restricted Project
myhsu updated the diff for D88394: [Driver][M68k] (Patch 8/8) Add driver support for M68k.
  • Rebased to latest changes
  • Addressed some of the feedbacks
Nov 30 2020, 11:13 PM · Restricted Project