Comments (4)
Hi @pupiles,
This is probably related to #40? See #198 (comment) for an explanation of what is most likely causing the issue.
I wish we may find a good solution for this, but at least for now, I have not yet found one. If you know any way to solve #40, please let us know :D
Happy wishes from Sweden.
Cheers,
Robin
from llvm.
Hi @mewmew,
Thanks for your reply.
I wonder if there is a temporary solution to this issue,for the scenario where parsing the correct align position is not important.
Best Wishes,
Pupiles
from llvm.
Hi @mewmew,
Thanks for your reply.
Hi @pupiles, you're most welcome :)
I wonder if there is a temporary solution to this issue,for the scenario where parsing the correct align position is not important.
Here is possible and very crude work-around. It strips away align NN
from function declarations and definitions, and call and invoke instructions.
go install -v github.com/mewkiz/cmd/sar@master
strip_ll.sh
:
FILE=$1
sar -i 'call align [0-9]+ ' 'call ' $FILE
sar -i 'define align [0-9]+ ' 'define ' $FILE
sar -i 'declare align [0-9]+ ' 'declare ' $FILE
sar -i 'invoke align [0-9]+ ' 'invoke ' $FILE
Running strip_ll.sh heck.ll
rewrites the heck.ll
file so that it can be parsed with llir/llvm
.
Parsing heck.ll
(with align stripped) using l-tm of llir/llvm
.
$ l-tm -v heck.ll
=== [ heck.ll ] =======================
total time for file "heck.ll": 165.866118ms
source_filename = "heck.e5goil5t-cgu.0"
target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-apple-macosx10.7.0"
%"[closure@/Users/admin/.cargo/registry/src/rsproxy.cn-8f6827c7555bfaf8/heck-0.3.3/src/camel.rs:23:37: 23:43]" = type {}
...
Cheers,
Robin
from llvm.
I'll close this as a duplicate of #40 for now. I do hope we find a good solution for #40 soon, as it comes up every now and then.
Happy coding!
/robin
from llvm.
Related Issues (20)
- `SRet` struct location HOT 3
- How to use Function Pointers? HOT 3
- Wrong function pointer type HOT 1
- indirect br only takes constant addr HOT 1
- Returning void as a value HOT 3
- update llir/llvm to support 14.0 HOT 2
- update llir/llvm to support LLVM 15.0 HOT 7
- How to have two structs referencing eachother HOT 4
- How to convert to exe? HOT 3
- `module.NewTypeDef` has unexpected side effects HOT 17
- Provide working Hello, World example HOT 1
- support llvm 16.0.0 HOT 2
- incorrect cmpxchg signature HOT 4
- How to generate ir for embedded struct? HOT 6
- Convert to string HOT 1
- Hello 10 instead of Hello world. Passing a IntPtr to printf (go - LLIR/LLVM) HOT 3
- malloc and strcpy in LLVM HOT 1
- unable to generate LLVM: structure, external , noundef and ptr HOT 1
- No way to find underlying type of pointer or array HOT 1
- How to compile LLVM IR to machine code programatically? HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from llvm.