soumitrachatterjee / llvm-project

The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Note: the repository does not accept github pull requests at this moment. Please submit your patches at http://reviews.llvm.org.
http://llvm.org
Other
0 stars 7 forks source link

Display fragile functions #6

Open soumitrachatterjee opened 1 year ago

soumitrachatterjee commented 1 year ago

Display all functions that are marked with the custom attribute IsFragile in a formatted table. Include the full signature of the function in the display, including the parameter names, types and the return type. Also display the size of the function (in number of lines of code) and the name of the source file that contains the function definition.

MayaSatishRao commented 1 year ago

@soumitrachatterjee I am unable to understand the problem statement. What should be given as input to compiler and what is the expected output? I have looked at the official documentation to add new attributes here: https://clang.llvm.org/docs/InternalsManual.html#how-to-change-clang I also found that documentation is not complete here: https://www.cs.cmu.edu/~seth/llvm/llvmannotation.html Can you guide me on how to proceed?

soumitrachatterjee commented 1 year ago

You have to attempt this in the order specified in the project, i.e. first you need to address issue #5 and then this.

There is no special input to the compiler. The compiler should be able to display all functions (including the requested details) that have been marked with the attribute (as instructed in #5).

As for documentation, please search around a bit. You'll have to hack around a bit to make up for the missing documentation, if any.