Wiki Roadmap Timeline Tickets New Ticket Source Search Help / Guide About Trac Login

Ticket #7 (closed defect: fixed)

Opened 1 year ago

Last modified 8 months ago

Multiple modules on the command line is broken

Reported by: lindquist Assigned to: ChristianK
Priority: major Milestone: Alpha
Component: Version:
Keywords: Cc:

Description

The backend glue needs to be able to do multiple passes over a Dsymbol so it will work even if it has already been emitted in a earlier module.

Change History

11/27/07 05:27:28 changed by lindquist

  • status changed from new to assigned.

(in reply to: ↑ description ) 01/15/08 06:12:52 changed by Anonymous

Replying to lindquist:

The backend glue needs to be able to do multiple passes over a Dsymbol so it will work even if it has already been emitted in a earlier module.

when you delete ir.module , all infomation stored in dsymbol.llvalue also become invalid.

01/15/08 09:22:06 changed by lindquist

I'm aware of this problem. Basically my plan is to move all the codegen related state into respective IRxxx classes. This should fix the problem properly! Types can be used across modules though so that won't be a problem. basically it should be possible to 'resolve' once, then do 'declaration', 'constInit' and 'definition' for all symbols, for each module. Hope this makes sense!

01/24/08 20:46:36 changed by lindquist

most of this is in place, shouldn't be too long :)

05/01/08 07:32:08 changed by ChristianK

  • status changed from assigned to closed.
  • resolution set to fixed.

(In [173]) moved IR state previously stored in Type into IrType? and a Type->IrType? map; fixes #7

05/03/08 22:31:37 changed by lindquist

  • status changed from closed to reopened.
  • resolution deleted.

This is not yet completely fixed. To reproduce, comment 'oneatatime=yes' in the 'llvmdc-posix-internal' rebuild-profile and build the tangotests.

05/06/08 19:05:48 changed by lindquist

  • owner changed from lindquist to ChristianK.
  • status changed from reopened to new.

05/12/08 13:16:54 changed by ChristianK

  • status changed from new to closed.
  • resolution set to fixed.

I'm marking this as fixed for now. Further issues related to compiling multiple modules with a single invocation of llvmdc should probably get their own, specific tickets.

Copyright © 2008, LDC Development Team.