================
@@ -0,0 +1,189 @@
+//===------ RISCVProfiles.td - RISC-V Profiles -------------*- tablegen 
-*-===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM 
Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+class RISCVProfile<string name, list<SubtargetFeature> features>
----------------
topperc wrote:

> When adding new RISCVProcessorModel, we can just specify profile feature and 
> those implemented optional extensions.

This case can be handled with a named list in tablegen and a `listconcat` 
without exposing it as a subtarget feature.

> When disassembling some object files, we don't need a long -mattr if we know 
> it's compiled with a profile.

If objdump requires you to use `-mattr`, instead of `-march`, that's a bad 
interface design. Users of objdump shouldn't need to know if they to have pass 
`experimental-` before an extension name.

> When doing some end-to-end tests that we need to discard CPU specific 
> features (so we can't use -mcpu), we don't need a long -mattr.

This might be an argument for a `generic-<profile>` `mcpu`.

https://github.com/llvm/llvm-project/pull/76357
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to