-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Tests fail when ntohl contains inline assembly #29
Comments
Hi @wuruoyu, I think this is the same issue as the one we had with the Dockerfile (#22). The tl;dr is that the tests have been adjusted to work on big-endian systems, which unfortunately makes them fail on some little-endian ones. But it's only the tests - most normal code shouldn't be affected. (Your system's version of the Hope this helps :) |
I notice that |
This fixes issue eurecom-s3#29 and ensures that tests pass. The issue was that the GNU netinet/in.h header files replaces ntohl with a byteswap macro when optimizations are enabled. Thus, we check if ntohl is defined as a macro, and if it is, undefine the macro to ensure that the function is used (and hence symbolized).
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This pass exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This change exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This change exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue eurecom-s3#29 and does away with the hacks made in PR eurecom-s3#75
This change exploits LLVM's target lowering and its ability to expand inline assembly into explicit LLVM code. Importantly, this expansion includes lifting `bswap` instructions to the `bswap` intrinsic, which can be symbolized with symcc. This fixes issue #29 and does away with the hacks made in PR #75
Hi,
When building and checking with
ninja check
, it shows that 8 cases fail. It is weird since it works perfectly months ago and I follow the exact same building script. Could you help me check the possible issue?I build the symcc with these commands and outputs:
And then
ninja check
:ninja check output.txt
Thank you in advance!
The text was updated successfully, but these errors were encountered: