Skip to main content
The 2024 Developer Survey results are live! See the results

All Questions

Tagged with
0 votes
0 answers
40 views

cc -o out out.s on macOS with M1 chip

I have been learning the chapter of 04_Assemblyhttps://github.com/DoctorWkt/acwj/tree/master/04_Assembly. According to the README.md, after I typed cc -o comp1 -g cg.c expr.c gen.c interp.c main.c ...
ge1mina023's user avatar
0 votes
1 answer
28 views

Why CSAPP say Gcc do not use vcvtss2sd?

Computer Systems: A Programmer's Perpective (3rd), in section 3.11.1, say "Suppose the low-order 4 bytes of %xmm0 hold a single-precision value; then it would seem straightforward to use the ...
TouXianGuan's user avatar
1 vote
1 answer
57 views

gnu inline assembly constraint `i` for memory address

Recetly, this function rip_rel_ptr has been added to Linux kernel. https://elixir.bootlin.com/linux/latest/source/arch/x86/include/asm/asm.h#L118. I can compile the kernel, but when I copy this ...
amrzar's user avatar
  • 367
1 vote
0 answers
67 views

Assembling with gcc gives error operand type mismatch for `cmp' for some integers, not others

This is a weird one. I'm using gcc to assemble a program and I want to know if the value in register rsi fits in 32 bits, so I use this instruction: cmpq $0xffffffff, %rsi I get back an error that ...
Kenshi's user avatar
  • 11
2 votes
2 answers
104 views

Why is the assembly code generated with gcc under windows unable to be assembled under WSL?

I learned that assembly code doesn't depend on the OS. For verification, I generate the assembly code of the following code snippet (named test.c) under windows and try assembling it under WSL. int ...
hiiragi4000's user avatar
0 votes
0 answers
62 views

what does .LC* and .L* mean and what is its purpose in assembly?

(the asterixes in the title count as an incrementing number) It looks like ".LC0" always has something to do with the main method and that ".LC*" always have something to do with ...
bangingmyheadontable's user avatar
0 votes
0 answers
91 views

How to turn C Code into Assembly Code that a dissasembler would produce, using GCC?

I want to learn Assembly so I can reverse engineer disassembled Programs eventualy. I figured it would be best to learn C with Assembly side by side. I know now that there are different stages ...
bangingmyheadontable's user avatar
20 votes
2 answers
870 views

How is this function's assembly implementing the conditional?

The following code, int foo(int); int bar(int); int foobar(int i) { int a = foo(i); int b = bar(i); return a == b ? a : b; }; with GCC trunk is compiling to this assembly: foobar(int): ...
Enlico's user avatar
  • 26.7k
1 vote
0 answers
78 views

Question about String Reversal in C Code: Why does the string appear reversed at the end?

I have this C code where I am trying to reverse a string using inline assembly. However, I am curious to know how the reversed string is displayed at the end: printf("Reversed string: %s\n", ...
Joni's user avatar
  • 47
1 vote
1 answer
78 views

Assembly error when compiling C code with ASM instructions

I'm new to assembly language programming and I'm having a problem with a C program that incorporates assembly instructions (ASM) to reverse a string. The code works without errors on my Debian virtual ...
Joni's user avatar
  • 47
-1 votes
1 answer
96 views

Issue with string length validation in assembly and C

I'm new to assembly language and I'm working on a program that combines assembly language with parts written in C. My goal is to prompt the user to input a string of characters and ensure that it does ...
Joni's user avatar
  • 47
0 votes
1 answer
70 views

GCC output Arm64 assembly instructions

I have a c program on a raspberry pi. I am trying to get the assembly of the code I have written. As the Raspberry Pi is an ARM64 processor I was expecting the assembly to be in ARM64. Command: gcc -S ...
DavidT's user avatar
  • 33
1 vote
1 answer
125 views

What is the reasoning behind this boilerplate start-up code?

Here's a snippet from disassembled output of a simple program with gcc on Linux: 400478: ff 15 6a 0b 20 00 callq *0x200b6a(%rip) # 600fe8 <__libc_start_main@GLIBC_2.2.5> ...
user129393192's user avatar
0 votes
0 answers
89 views

How to compile to RISC-V?

I'm writing the final stage for my compiler to riscv; however, I have run into a minor issue of figuring out what the start point of the program is. Are we guaranteed that the PC starts execution with ...
user129393192's user avatar
2 votes
0 answers
62 views

GCC ignores already stored constant in FPU register on -O2

I got simple function that calculates sin cos : https://godbolt.org/z/v61GP9qvj Compiler flags set for cortex m4 MCU with FPU question is why in disassembly at line 34: vldr.32 s13, .L35+20 it loads 0....
VasiliSk's user avatar

15 30 50 per page
1
2 3 4 5
172